Telegram Web Link
От Symfony к Laravel - 5 шагов по подготовке проекта Symfony к миграции

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

Как только вы узнаете рецепт, становится ясно, что переход вполне осуществим.
Сегодня мы рассмотрим шаги по подготовке проекта Symfony к будущему переходу на Laravel.

1. Make sure your Configs are *.php
2. Prepare a custom script for TWIG to Blade conversion
3. Understand the differences between Symfony and Laravel container
4. Create a parallel Laravel container
5. Try the Laravel container in your tests

https://tomasvotruba.com/blog/from-symfony-to-laravel-5-steps-to-prepare-your-symfony-project-for-migration/

👉 @php_lib
🤡5👍1😁1💩1
Организация кода в Laravel. Личный опыт

В статье я расскажу, как организую свой код в проектах, использующих Laravel. Решил немного структурировать, с чем удалось познакомиться после перехода в мир фреймворков из мира чудного (ударение можете сами поставить) Битрикс. Многие вещи стали для меня открытием и особенно переоткрыл для себя ООП. Начнем рассмотрение с практик организации кода проекта. Статья адресована начинающим разработчикам.

https://habr.com/ru/articles/760022/

👉 @php_lib
👍4
Ускорение сайта путём выявления проблемных участков кода: xDebug + phpStorm

Статья будет полезна джунам и миддлам кто разрабатывает сайты, кто занимается оптимизацией сайтов и кто хочет посмотреть на работу php кода "с высоты". Для себя из полезного можно узнать как связать вместе OpenServer, PhpStorm и xDebug. Один раз настраиваете и можно потом запросто делать отладку. И так, начнём.

https://habr.com/ru/articles/579434/

👉 @php_lib
👍4
PHP-коллекции с PHP-map

Массивы и коллекции в PHP
Простая и элегантная работа с массивами в PHP с помощью объекта коллекции, подобного массиву, как это сделано в jQuery и Laravel Collections.

https://php-map.org/

https://github.com/aimeos/map

👉 @php_lib
👍4
Mighty

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

Mighty - это быстрая, мощная, надежная и простая в использовании библиотека валидации, с которой просто приятно работать, она позволяет легко проверять любые данные. Благодаря мощному языку Mighty Validation Expression Language (mVEL) она не похожа ни на что, что вы видели раньше. Благодаря его подходу к валидации и более чем 250 встроенным правилам нет практически ничего, что нельзя было бы проверить с его помощью, причем очень выразительно и компактно. Проще говоря, Mighty - это валидация на стероидах! Это действительно последняя библиотека валидации, которая вам когда-либо понадобится.

Mighty предлагает несколько различных подходов к проверке данных. Чаще всего она используется для проверки входящих данных через HTTP-запросы, но этим, конечно, не ограничивается; Mighty также предоставляет атрибуты в виде ограничений, что позволяет легко проверять модели и/или любые объекты.

Mighty включает в себя широкий набор удобных правил проверки, которые можно применять как отдельные правила, так и комбинировать их между собой с помощью операторов для построения более сложных проверок.

Установка
composer require marwanalsoltany/mighty

https://github.com/MarwanAlsoltany/mighty

👉 @php_lib
👍5
Действительно ли генераторы помогают экономить память?

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


Сначала я удивился — откуда взялись такие идеи? Ведь мы много лет работали с большими объемами данных без всяких генераторов. Лучшая статья про генераторы в РНР, опубликованная ещё десять лет назад, Что генераторы могут для вас сделать Антонио Феррары тоже практически не упоминает экономию памяти. У меня и у самого всегда было чёткое ощущение, что хотя генераторы — это совершенно отличное изобретение, у которого есть множество разнообразных применений, но вот только экономии памяти среди них нет.

В итоге у меня разыгралось любопытство и я решил разобраться с этим вопросом.

https://habr.com/ru/articles/599113/

👉 @php_lib
👍3
Unorthodox Eloquent

Eloquent - это великолепный инструмент, полюбившийся многим. Он позволяет с легкостью выполнять операции с базами данных, сохраняя при этом простой в использовании API. Реализуя паттерн Active Record (AR), описанный Фаулером в книге PoEAA, он является одной из лучших реализаций AR, доступных на сегодняшний день.

https://muhammedsari.me/unorthodox-eloquent

👉 @php_lib
👍2
Откройте для себя новые пакеты Laravel

Наша цель - помочь сообществу Laravel найти новые и полезные пакеты Laravel в одном месте.

https://laravel-package-ocean.com/

👉 @php_lib
👍3
Свой личный SMS-шлюз. Часть 1 – цели, задачи, сборка и тестирование

Представляю вам цикл статей по созданию собственного шлюза для отправки SMS-сообщений.
В первой части мы определим цели и некоторые аспекты использования своего шлюза, настроим программное обеспечение для отправки SMS с использованием USB-модемов, а также рассмотрим несколько интересных вариантов отправки

Начнем мы статью с вопроса – для чего отправлять SMS, ведь на дворе 2021 год? Да, мы уже привыкли к различным мессенджерам, уведомлениям в чат-боты, но SMS до сих пор обладает наиболее гарантированным уровнем доставки. Нет зависимости от наличия интернета и сообщение поступит даже в сети 2G и при слабом сигнале и на устройство без доступа к интернет. Таким образом, если планируется отправлять сообщения, которые гарантированно должны быть доставлены и критичны к времени доставки, то SMS – это возможно лучший выбор.

Под SMS-шлюзом мы понимаем программно-аппаратное устройство подключенное к сети сотового оператора и позволяющее производить автоматизированную отправку сообщений.

https://habr.com/ru/companies/ruvds/articles/554868/

👉 @php_lib
👍5🌚1
Свой личный SMS-шлюз. Часть 2 – создаём API и форму отправки

Представляю вам вторую часть из серии статей по созданию своего шлюза.
В первой части мы настроили Gammu, рассмотрели особо интересные параметры и успешно произвели отправку SMS сообщения. Сейчас нам предстоит задача посложнее – создать некую программную прослойку (API), для того, чтобы можно было работать со шлюзом путем отправки запросов на этот API. В первую очередь это комфорт, во вторую – большое количество дополнительных возможностей.

https://habr.com/ru/companies/ruvds/articles/555422/

👉 @php_lib
👍3
Расширенные возможности MessagePack

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

В этой статье я не буду рассказывать, как устроен MessagePack или сравнивать его с аналогами: материалов на эту тему в Интернете предостаточно. Чего действительно не хватает, так это информации о расширенной системе типов MessagePack. Я постараюсь объяснить и показать на примерах, что это такое и как с помощью дополнительных типов сделать сериализацию еще более эффективной.

https://habr.com/ru/companies/vk/articles/555748/

👉 @php_lib
👍4
Как добавить функцию миграции структуры базы данных в ваши старые PHP-проекты?

Во вселенной существует огромное количество старых проектов, написанных на PHP. Старые кодовые базы трудно поддерживать, и нелегко создать среду разработки для старых приложений. У меня была такая же проблема; у меня есть много решений для создания stateless среды разработки для старых проектов. Сегодня я остановлюсь на одном из них, связанном с базами данных.

https://emre.xyz/how-to-add-a-database-structure-migration-feature-to-your-legacy-php-projects

👉 @php_lib
👍2
Выявление медленных запросов до того, как они попадут в рабочую базу данных

Статический анализ кода доступа к базам данных стал реальностью с появлением phpstan-dba. Просто придерживайтесь правил, и все будет в порядке:

При включении phpstan-dba будет сообщать об ошибках в случае неэффективности запросов. Анализатор сообщает о проблемах, связанных с запросами, не использующими индекс, полными сканированиями таблиц и слишком большим количеством неиндексированных чтений.

https://staabm.github.io/2022/08/16/phpstan-dba-query-plan-analysis.html

👉 @php_lib
👍4
2025/07/10 22:57:26
Back to Top
HTML Embed Code: