Библиотека PHP программиста 👨🏼💻👩💻
Kanalga Telegram’da o‘tish
Полезные материалы по PHP, Laravel, Symfony, CodeIgniter, CakePHP, Phalcon По всем вопросам @evgenycarter
Ko'proq ko'rsatish2 040
Obunachilar
+124 soatlar
-87 kun
-1630 kun
Postlar arxiv
Модифицируйте таблицы и записи в режиме реального времени с помощью Laravel Population
Laravel Population - это пакет Laravel, предназначенный для управления миграциями и записями в базе данных. Он значительно упрощает процесс модификации таблиц, избавляя от необходимости создавать новые миграции и обработчики для этих изменений.
https://capsules.codes/en/blog/fyi/en-fyi-modify-tables-and-records-with-laravel-population
👉 @php_lib
С чего начать изучение работы с RabbitMQ?
С бесплатного практического урока «Очереди сообщений и протокол AMQP» от OTUS.
На вебинаре разберём:
- возможности протокола AMQP;
- как подключаться к брокеру из вашего языка программирования;
- как отправить и принять сообщение;
- как организовать простейший RPC-сервис.
Встречаемся 6 февраля в 20:00 мск в рамках курса «RabbitMQ для разработчиков и администраторов». Доступна рассрочка на обучение!
Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cugAQy
Genealogy
Бесплатное приложение с открытым исходным кодом (семейное дерево) для записи членов семьи и их взаимоотношений, созданное на PHP (Laravel 10).
https://github.com/MGeurts/genealogy
👉 @php_lib
Разработка расширения для PHP на C++. Хуки встроенных функций и методов
PHP - это мощный и широко используемый язык программирования для веб-разработки. Однако иногда требуется расширение функциональности или модификация стандартного поведения PHP с использованием более низкоуровневых языков, таких как C++. В этой статье мы рассмотрим, как создать расширение для PHP на C++ на примере разработки функциональности, позволяющей перехватывать вызовы встроенных функций и методов классов в php.
https://habr.com/ru/articles/779344/
👉 @php_lib
Как убрать лишний код из контроллеров в PHP?
Расскажет Михаил Каморин — Dev Tech Lead в Skyeng. Встречаемся на бесплатном практическом уроке от OTUS, где вы узнаете, как:
▫️убрать сериализацию, десериализацию и валидацию с помощью DTO и компонента Validator;
▫️убрать обработку ошибок с помощью компонента EventDispatcher;
▫️убрать бизнес-логику с помощью подхода CQRS.
Встречаемся 8 февраля в 20:00 мск в рамках курса «Symfony Framework». После урока у вас будет возможность стать студентом программы по специальной цене и даже в рассрочку!
👉 Для бесплатного участия и получения записи регистрируйтесь прямо сейчас: регистрация
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
PHP Annotated – January 2024
Добро пожаловать в январский выпуск PHP Annotated! Мы расскажем о самых интересных событиях в PHP-сообществе за последний месяц, представив отобранные новости, статьи, инструменты и видео.
https://blog.jetbrains.com/phpstorm/2024/01/php-annotated-january-2024/
👉 @php_lib
Создание одностраничного приложения с помощью HTMX и Symfony
С появлением множества доступных сегодня Javascript-фреймворков веб-страницы стали более плавными и удобными с точки зрения пользовательского интерфейса, и Symfony тоже старается улучшить эту сферу с помощью таких инициатив, как Symfony UX.
Это прекрасно для пользователей, поскольку обеспечивает им беспроблемный и интуитивно понятный интерфейс, но это означает, что мы должны каждый день менять наш способ создания веб-сайтов, причем совершенно по-новому. Такие решения, как Symfony UX, начали появляться на свет, чтобы упростить разработку UX-ориентированных компонентов/сайтов. Мы уже рассказывали об этом конкретном инструменте в другой статье блога, и он отлично работает! Однако то, что мы используем Symfony, не делает его единственным вариантом!
Эта статья посвящена библиотеке, которая в последнее время набирает обороты в области библиотек, улучшающих UX, - htmx.
https://jolicode.com/blog/making-a-single-page-application-with-htmx-and-symfony
👉 @php_lib
🔝 Как стать успешным разработчиком в 2024?
Прокачать разработку на PHP – одном из самых востребованных языков программирования сейчас.
🔥 На онлайн-курсе "PHP Developer. Professional" от OTUS и партнера R52.RU вы сможете достичь уровня Middle+ всего за 5 месяцев, освоив не только написание кода, но и работу с инфраструктурой и важные софты.
➡️ Программа идеально подходит для разработчиков, программирующих на PHP или любом другом ООП, которые хотят развиваться в backend-направлении или перейти на fullstack.
🎫 Есть рассрочка на комфортных условиях!
➡️ Пройдите бесплатное вступительное тестирование прямо сейчас и узнайте, готовы ли вы к обучению: https://vk.cc/cu7jV3
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Объекты значений в PHP 8: сущности
В предыдущих статьях мы узнали, как создавать фундаментальные объекты ценности, и осознали их роль в повышении стабильности и надежности наших приложений.
В этой статье мы рассмотрим еще один архитектурный паттерн, тесно связанный с объектами ценности: Сущности.
https://dev.to/cnastasi/value-object-in-php-8-entities-1jce
👉 @php_lib
Объекты значений в PHP 8: расширенное использование. Часть 2
В предыдущей статье мы рассмотрели возможности объектов значений в повышении качества кода, надежности системы и минимизации необходимости обширной валидации. Теперь давайте погрузимся глубже, чтобы улучшить понимание и использование этого важнейшего инструмента.
https://dev.to/cnastasi/advanced-value-objects-in-php-8-1lp0
👉 @php_lib
Как работает валидация в Symfony?
Расскажет Михаил Каморин — Dev Tech Lead в Skyeng. Встречаемся на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом:
✅ рассмотрите базовые возможности компонента валидации;
✅ разберёте пример с условным применением правил;
✅ напишете кастомный constraint.
Вебинар будет полезен разработчикам на PHP, которые хотят повысить квалификацию.
Встречаемся 25 января в 20:00 мск в рамках курса «Symfony Framework». После урока у вас будет возможность стать студентом программы по специальной цене и даже в рассрочку!
👉 Для бесплатного участия и получения записи регистрируйтесь прямо сейчас: регистрация
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Совет по Laravel 💡
Знаете ли вы, что диапазоны Eloquent можно использовать при определении других отношений?
👉 @php_lib
Объекты значений в PHP 8: создание лучшего кода. Часть 1
В мире программирования поддержание качества кода на должном уровне имеет большое значение.
Паттерн Value Object способен значительно улучшить качество вашего кода, сделав его более надежным и удобным для сопровождения.
В этой статье я расскажу о том, как реализовать паттерн и как это позволит добавить немного "сахара" в ваш код, используя последние возможности, представленные в PHP 8.1 и PHP 8.2.
https://dev.to/cnastasi/value-objects-in-php-8-building-a-better-code-38k8
👉 @php_lib
❓Как стать разработчиком Битрикс24 в 2024?
Прокачать необходимые скиллы под руководством опытных экспертов из ведущих компаний на онлайн-курсе от OTUS.
После обучения вы сможете:
— создавать свои компоненты системы для обеспечения нужд бизнеса;
— гибко работать с данными в системе;
— автоматизировать бизнес-процессы;
— кастомизировать стандартный функционал системы.
Также на курсе вас ждут:
— живые вебинары с возможностью задать вопросы экспертам;
— много практики и сильные проекты для портфолио;
— поддержка профессионального комьюнити.
➡️ Оставьте заявку прямо сейчас и получите подарочный урок, который поможет ознакомиться с форматом обучения: оставить заявку
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
✨ Советы по Laravel ✨
Если вы создаете API в своем проекте:
🪐 Применяйте версионирование в самом первом релизе
🪐 Поддерживайте чистоту в routes/api.php, создавая разные файлы маршрутов для каждой версии👇
🧹 Более чистый код, 📈 Лучшие результаты
👉 @php_lib
Разработка пакетов Laravel : Ключевые шаги к созданию эффективного инструмента
Возможно, вы уже видели или использовали такие пакеты Laravel, как Sanctum, Passport, Nova и многие другие. Но задумывались ли вы когда-нибудь, как можно упаковать и развернуть свою разработку в пакет с любой логикой и поделиться им с другими разработчиками в сообществе Laravel?
Одной из ключевых особенностей фреймворка Laravel является экосистема пакетов, которые предоставляют потрясающие возможности для создания высококачественных приложений.
Пакеты - это основной способ добавления любой функциональности в проекты Laravel. Это может быть что угодно - от набора стилей и скриптов до сложной бизнес-логики и API-интеграций.
Код пакетов может быть как самостоятельным, так и служить дополнением к определенному фреймворку, и может разрабатываться и поддерживаться разными разработчиками.
В этой статье мы сосредоточимся на написании пакетов для фреймворка Laravel.
Концепция разработки пакетов включает в себя такие понятия, как ServiceProvider, Facades, Contracts. Все эти элементы обеспечивают стабильную работу приложений от тестирования до продакшена.
ServiceProvider - это точка контакта между контейнером приложения и вашим пакетом. Через него осуществляется управление всеми ресурсами приложения. Инъекция зависимостей - это лучшее, что можно придумать.
https://dev.to/dnsinyukov/laravel-package-development-key-steps-to-building-an-effective-tool-2a7a
👉 @php_lib
Вебинар «Разрушаем мифы о PHP. Топ-5 газетных заголовков»
Встретимся на вебинаре с экспертами разработки, чтобы разобраться — PHP жив? Где его используют? Почему его стоит учить?
📎Когда? 19 января в 19:00
Бесплатно, регистрация обязательна. Она по ссылке ⬅️
Обсудим расхожие мнения:
* PHP устарел?
* Тормозит?
* Дырявый?
* Фреймворков нет, а которые есть — дырявые?
* С PHP нельзя слезть?
Наши спикеры не согласны 🙂
С нами будут:
➕Всеволод Севостьянов,Staff Engineer в Американской компании navan.com. Специализируется на построении complex cognitive systems.
➕И Егор Черненок, Senior PHP-разработчик в AGIMA. Пишет сложный бекенд и хочет, чтобы люди не боялись PHP и не пересказывали про него анекдоты двадцатилетней давности.
П.С. Каждому участнику — бонус от Слёрма.
Реклама. ООО «Слёрм» г. Лиски, ОГРН 1193668020545 Erid: 2VtzqvyKGJz
Совет по Laravel 💡
Вот 3 синтаксических способа определения внешнего ключа отношения belongsTo в миграциях.
Лично я считаю второй вариант более предпочтительным.
Schema:: create( 'orders', function (Blueprint $table) {
$table->id();
$table->unsignedBigInteger( 'user_id');
$table->foreign('user_id')->references( id') ->on('users");
});
// Or
Schema: :create( 'orders', function (Blueprint $table) {
$table->id();
$table->foreignId('user_id')->constrained();
});
/Or
Schema: :create( 'orders', function (Blueprint $table) {
$table->id();
$table->foreignIdFor (User: :class) ->constrained( ) ;
/
});
👉 @php_libPHP: The Ultimate Guide
Автор: Sufyan bin Uzayr (2022)
Эта книга предлагает:
- Пошаговый подход к решению проблем и развитию навыков
- Быстрое изучение основных концепций языка в форме "Краш-курса".
- Продвинутые, практические основные концепции с акцентом на реальных проблемах
- Парадигмы кодирования промышленного уровня и практико-ориентированный объяснительный подход
- Особое внимание уделяется написанию чистого и оптимизированного кода, а дополнительные главы посвящены методологии кодирования
👉 @php_lib
🐘 Тест по PHP от OTUS
Проверь насколько хорошо ты знаешь PHP
Ответишь — пройдешь на продвинутый курс "PHP Developer. Professional" от OTUS по специальной цене + получишь чек-лист "Solid и типичные ошибки на собеседованиях" .
➡️ ПРОЙТИ ТЕСТ: https://vk.cc/ctXWBK
🎫 Курс можно приобрести в рассрочку
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru