TG Telegram Group & Channel
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter | United States America (US)
Create: Update:

5 невероятных новых возможностей в Symfony 7.3 🚀

Фреймворк получил сразу несколько мощных улучшений, которые делают код чище, отладку проще, а работу — быстрее. Вот ключевые фичи релиза:

1️⃣ ObjectMapper: минимум шаблонного кода
Маппинг DTO → Entity теперь одной строкой:

$user = $mapper->map($dto, User::class);

А обновление объекта — без боли:

$mapper->map($dto, $user);

2️⃣ Пояснения решений Security Voter'ов
Теперь можно узнать почему отказано в доступе — Symfony выводит причины в профайлер и логи:

$vote?->addReason('Пользователь заблокирован и не может комментировать');

3️⃣ JsonPath: запросы к JSON как XPath к XML
Новый компонент для извлечения и фильтрации JSON-данных:

$crawler->find('$.store.book[?(@.price < 10)]');

Поддержка функций length(), count(), match() и др.

4️⃣ Статические страницы ошибок
Теперь можно сгенерировать HTML-страницы для ошибок (400–511) и отдать их напрямую из nginx:

APP_ENV=prod php bin/console error:dump var/cache/prod/error_pages/

5️⃣ Server-Sent Events — просто
Реализовать стриминг событий на клиент стало легче:

yield new ServerEvent($job->toJson(), type: 'jobs');

Без внешних библиотек и с нативной поддержкой.

🔗 Подробнее — в блоге Symfony.

Библиотека пхпшника #буст

5 невероятных новых возможностей в Symfony 7.3 🚀

Фреймворк получил сразу несколько мощных улучшений, которые делают код чище, отладку проще, а работу — быстрее. Вот ключевые фичи релиза:

1️⃣ ObjectMapper: минимум шаблонного кода
Маппинг DTO → Entity теперь одной строкой:

$user = $mapper->map($dto, User::class);

А обновление объекта — без боли:

$mapper->map($dto, $user);

2️⃣ Пояснения решений Security Voter'ов
Теперь можно узнать почему отказано в доступе — Symfony выводит причины в профайлер и логи:

$vote?->addReason('Пользователь заблокирован и не может комментировать');

3️⃣ JsonPath: запросы к JSON как XPath к XML
Новый компонент для извлечения и фильтрации JSON-данных:

$crawler->find('$.store.book[?(@.price < 10)]');

Поддержка функций length(), count(), match() и др.

4️⃣ Статические страницы ошибок
Теперь можно сгенерировать HTML-страницы для ошибок (400–511) и отдать их напрямую из nginx:

APP_ENV=prod php bin/console error:dump var/cache/prod/error_pages/

5️⃣ Server-Sent Events — просто
Реализовать стриминг событий на клиент стало легче:

yield new ServerEvent($job->toJson(), type: 'jobs');

Без внешних библиотек и с нативной поддержкой.

🔗 Подробнее — в блоге Symfony.

Библиотека пхпшника #буст


>>Click here to continue<<

Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)