Библиотека PHP программиста 👨🏼‍💻👩‍💻
2.17K subscribers
328 photos
169 videos
7 files
337 links
Полезные материалы по PHP, Laravel, Symfony, CodeIgniter, CakePHP, Phalcon

По всем вопросам @evgenycarter
Download Telegram
Auth for API in 5 minutes via Symfony 6


Иногда разработчику нужно в кратчайшие сроки разработать некий минимальный функционал, отдельно от основного приложения, ведь так быстрее и нет всей этой бюрократии с релизами код ревью, согласованиями и месяцами тестирования.

Для этого разработчик создает новый репозиторий и там реализует свое “чудо”. Это может быть как автономный инструмент который считает процент прибавок к зарплате за сверхурочные в зависимости от ставки и выслуги лет, так и более сложная система с доступом корпоративной базе данных.

https://habr.com/ru/post/669590/

👉 @php_lib
👍1
Простой бенчмарк для PHP приложений

Очень часто приходится сравнивать время выполнения кода с целью выбора наиболее оптимального решения, и каждый раз для этого приходилось писать обработчик с расчётом времени обработки, после чего все результаты заносились в какую-нибудь таблицу Excel и вручную рассчитывалось минимальное, максимальное и среднее время выполнения...

Для решения этой тривиальной задачи был выпущен пакет "Benchmark", позволяющий сравнивать время выполнения кода без лишних затрат.

https://habr.com/ru/post/714802/

👉 @php_lib
👍4
Генерация строго-типизированных коллекций в PHP

Отсутствие коллекций — боль в заднице PHP. На данный момент нет удобного способа обеспечить безопасность типов для наборов объектов. Я постоянно создаю коллекции, но это означает, что нужно создавать новый класс каждый раз, когда нужна безопасность типов для набора данных.

https://telegra.ph/Generaciya-strogo-tipizirovannyh-kollekcij-v-PHP-02-12

👉 @php_lib
👍3
Как правильно проверять сложность пароля пользователя при регистрации

За десятилетия айтишки сложилась практика ограничивать пользователей в сложности их паролей. Сейчас пароль пользователя должен:

быть не меньше N символов;
&& быть не больше M символов (чуть реже встречается такое правило);
Содержать хотя бы одну большую букву;
Содержать хотя бы одну маленькую букву;
Содержать хотя бы одну цифру;
Содержать хотя бы один спецсимвол;

https://habr.com/ru/post/714478/

👉 @php_lib
👍5
Чистим пхпшный код с помощью DTO

При написании нового метода или сервиса мы стараемся его максимально абстрагировать от внешних зависимостей, чтобы новый функционал реализовывал только заложенную ему логику. Об этом, собственно, нам и говорит один из принципов SOLID - Принцип единственной ответственности (single responsibility principle).

https://telegra.ph/CHistim-phpshnyj-kod-s-pomoshchyu-DTO-02-12

👉 @php_lib
👍2
В очередь, ...! Как управлять состоянием системы через события

Существует множество разных подходов к построению архитектуры серверных приложений. В данной статье рассмотрим Event-driven архитектуру (она же событийно-ориентированная). Рассмотрим основные принципы, как перейти от связей Компонент А <-> Компонент В, к связям через события Компонент А -> Событие B -> Компонент B, и зачем это нужно.

https://habr.com/ru/post/699492/

👉 @php_lib
👍2
Как прокачаться в PHP: 70 ресурсов из опроса русскоязычного сообщества

В чаты по PHP часто приходят с вопросами про развитие: какие книги стоит прочитать в первую очередь, на какие каналы подписаться, какие курсы хороши. Если повезет, в ответ чат поделится парой рекомендаций. Мы решили агрегировать их в список и собрали 150+ мнений по актуальным ресурсам для PHP-разработчика.

https://habr.com/ru/company/skyeng/blog/666626/

👉 @php_lib
👍4
Laravel позволяет получать записи в маршрутах не только по первичному ключу, но и по любому полю модели.

👉 @php_lib
👍5👎1