Библиотека PHP программиста 👨🏼💻👩💻
الذهاب إلى القناة على Telegram
Полезные материалы по PHP, Laravel, Symfony, CodeIgniter, CakePHP, Phalcon По всем вопросам @evgenycarter
إظهار المزيد2 094
المشتركون
لا توجد بيانات24 ساعات
-37 أيام
-1130 أيام
أرشيف المشاركات
Rector-laravel
Rector upgrades rules for Laravel
https://github.com/driftingly/rector-laravel
👉 @php_lib
Array Destructuring in PHP
Destructuring arrays
Destructuring arrays with non-numerical keys
Using the shorthand syntax
Skipping items
Building and assigning
Destructuring nested arrays
A practical example
Beware of undefined indexes
Merging defaults
👉 @php_lib
В очередь, ...! Как управлять состоянием системы через события
Существует множество разных подходов к построению архитектуры серверных приложений. В данной статье рассмотрим Event-driven архитектуру (она же событийно-ориентированная). Рассмотрим основные принципы, как перейти от связей Компонент А <-> Компонент В, к связям через события Компонент А -> Событие B -> Компонент B, и зачем это нужно.
https://habr.com/ru/post/699492/
👉 @php_lib
(Singly) Linked Lists explained in PHP
https://doeken.org/blog/linked-lists-explained-in-php
👉 @php_lib
Чистим пхпшный код с помощью DTO
При написании нового метода или сервиса мы стараемся его максимально абстрагировать от внешних зависимостей, чтобы новый функционал реализовывал только заложенную ему логику. Об этом, собственно, нам и говорит один из принципов SOLID - Принцип единственной ответственности (single responsibility principle).
https://telegra.ph/CHistim-phpshnyj-kod-s-pomoshchyu-DTO-02-12
👉 @php_lib
PHP | imagecopyresampled() function
https://www.geeksforgeeks.org/php-imagecopyresampled-function/
👉 @php_lib
Как правильно проверять сложность пароля пользователя при регистрации
За десятилетия айтишки сложилась практика ограничивать пользователей в сложности их паролей. Сейчас пароль пользователя должен:
быть не меньше N символов;
&& быть не больше M символов (чуть реже встречается такое правило);
Содержать хотя бы одну большую букву;
Содержать хотя бы одну маленькую букву;
Содержать хотя бы одну цифру;
Содержать хотя бы один спецсимвол;
https://habr.com/ru/post/714478/
👉 @php_lib
Генерация строго-типизированных коллекций в PHP
Отсутствие коллекций — боль в заднице PHP. На данный момент нет удобного способа обеспечить безопасность типов для наборов объектов. Я постоянно создаю коллекции, но это означает, что нужно создавать новый класс каждый раз, когда нужна безопасность типов для набора данных.
https://telegra.ph/Generaciya-strogo-tipizirovannyh-kollekcij-v-PHP-02-12
👉 @php_lib
Как начать изучать Highload архитектуру?
🗓 22 февраля в 20:00 приходите на открытый урок «Введение в высокие нагрузки» в OTUS. Занятие проведет Андрей Поляков, старший разработчик в Unlimint, в рамках онлайн-курса «Highload Architect».
На занятии мы:
- Проанализируем, в каких единицах можно измерять нагрузку.
- Рассмотрим преимущества и недостатки различных подходов к масштабированию,
- Обсудим проблемы высоконагруженных проектов.
👉 Пройдите вступительное тестирование, чтобы записаться на урок — https://otus.pw/3Pjq/
Все записавшиеся на урок получат его запись и еще 22 записи прошлых уроков!
Простой бенчмарк для PHP приложений
Очень часто приходится сравнивать время выполнения кода с целью выбора наиболее оптимального решения, и каждый раз для этого приходилось писать обработчик с расчётом времени обработки, после чего все результаты заносились в какую-нибудь таблицу Excel и вручную рассчитывалось минимальное, максимальное и среднее время выполнения...
Для решения этой тривиальной задачи был выпущен пакет "Benchmark", позволяющий сравнивать время выполнения кода без лишних затрат.
https://habr.com/ru/post/714802/
👉 @php_lib
Auth for API in 5 minutes via Symfony 6
Иногда разработчику нужно в кратчайшие сроки разработать некий минимальный функционал, отдельно от основного приложения, ведь так быстрее и нет всей этой бюрократии с релизами код ревью, согласованиями и месяцами тестирования.
Для этого разработчик создает новый репозиторий и там реализует свое “чудо”. Это может быть как автономный инструмент который считает процент прибавок к зарплате за сверхурочные в зависимости от ставки и выслуги лет, так и более сложная система с доступом корпоративной базе данных.
https://habr.com/ru/post/669590/
👉 @php_lib
Рекомендуем к прочтению книгу Александра Бындю "Антихрупкость в IT"
Эта книга — результат многолетнего опыта построения IT-продуктов. И прежде всего она о том, как выстроить процессы разработки IT-систем таким образом, чтобы успевать вовремя подстроиться под любые изменения.
В её основе — описание работающих практик, примеры из реальных проектов, анализ ошибок и выводы. В книге собраны рекомендации для владельцев бизнеса и разработчиков. Первые приобретут систематизированные знания о том, как правильно взаимодействовать с IT, а вторые — как делать хорошо и не делать плохо.
Сайт издания
Ознакомиться с книгой
Гайд по enum
Это мое личное руководство по использованию перечислений в PHP. Каждый раздел описывает правило, а также личное мнение, стоящее за этим правилом.
https://stitcher.io/blog/php-enum-style-guide
👉 @php_lib
Laravel’s safety mechanisms
https://planetscale.com/blog/laravels-safety-mechanisms
👉 @php_lib
Тестирование PHP проектов на примере Symfony
Хочу описать свои наработки и устоявшиеся подходы к тестированию PHP проектов. Последние годы я работаю с Symfony и здесь будет достаточно моментов специфичных для этого фреймворка. Так же в этой статье термин функциональные тесты (functional) является синонимом End-to-End тестов. Статья рассчитана на разработчиков уже знакомых с PHPUnit и Symfony, структурой composer файла. Врочем, здесь есть и общеизвестные моменты, чтобы облегчить понимание тем, кто только начинает писать тесты. Статья призвана упорядочить знания и показать какие-то удобные подходы. Формат статьи не позволяет раскрыть все нюансы. Тем не менее, я постараюсь озвучить все основные моменты, применяемые в работе и которые лично мне помогают на практике.
https://habr.com/ru/post/713454/
👉 @php_lib
Как ускорить приложение за счёт PHP-FPM (няшим FPM conf)
Сегодня хочу поговорить о том, как ускорить приложение через конфигурирование PHP-FPM.
Сейчас самый популярный (из тех с которыми я сталкивался) стек на котором поднимается PHP приложение это веб сервер nginx и процесс-менеджер php-fpm.
Я хочу поднять простое приложение с Laravel проектом, которое устанавливается со всеми параметрами по умолчанию. Попробуем это приложение нагрузить пользователями с помощью простого Javascript скрипта и посмотрим как ему удастся справиться с нагрузкой и как мы можем повысить обрабатываемую нагрузку только конфигурированием php-fpm. В конце статьи можно будет найти ссылку на GitHub и попробовать своими руками.
https://habr.com/ru/post/576344/
👉 @php_lib
TLDR - Плагин для PhpStorm с поддержкой искусственного интеллекта, который объясняет код на простом английском языке.
https://plugins.jetbrains.com/plugin/20050-tldr
👉 @php_lib
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
