PHP-Дайджест № 193 (16 – 30 ноября 2020)

povrs78fygwslz3yegbcgfun8by.jpeg

Парад релизов: обновление языка — PHP 8.0, а также Xdebug 3, DBAL 3.0, Bref 1.0, Symfony 5.2, Flysystem 2.0. Первый принятый RFC для PHP 8.1, долгосрочная поддержка PHPUnit, порция полезных инструментов, подкасты, стримы, статьи.

Приятного чтения!


PHP 8


f574e9991c42407b8fa789a66b854f8d.png Новости и релизы


  • Xdebug 3 — Большое обновление популярного отладчика. Теперь он быстрее в работе и значительно проще в конфигурации.

    Для старта достаточно одной опции xdebug.mode, а дефолтный порт сменен на 9003, чтоб не было конфликта с PHP-FPM. Подробнее в руководстве по обновлению.

    Сравнительные бенчмарки Xdebug 2 и Xdebug 3 показывают значительный прирост производительности x. Для сбора покрытия он даже быстрее, чем phpdbg, хоть и медленнее PCOV.

  • Bref 1.0 — Релиз инструмента, который облегчает создание serverless-приложений на PHP и AWS Lambda. Кстати, теперь с поддержкой WebSocket — удержание соединения берет на себя API Gateway.
  • doctrine/dbal 3.0 — После 10 лет с выхода DBAL 2.0 наконец-то мажорное обновление популярной библиотеки для работы с базами данных. Короткий обзор есть в анонсе релиза. Главные изменения касаются отвязки DBAL от PDO. Все fetch-методы перенесены из класса Statement в новый Result.
  • thephpleague/flysystem 2.0 — Обновление библиотеки, абстрагирующей работу с файловыми системами. Что нового в версии 2.
  • PHP 7.4.13
  • PHP 7.3.25
  • awvcz5jqj8-8mmnsmnaat51srze.png В твиттере продолжились споры о том, стоит ли поддерживать старые версии PHP в опенсорс инструментах. Никита написал, что инструменты, в которых минимальная версия PHP повышается слишком резко, в действительности приносят больше проблем на пути к обновлению PHP. .
    Ранее эта же проблема обсуждалась, когда Марко Ocramius бампнул версию в своем пакете Ocramius/PackageVersions до 7.4 (уже и до 8.0). В результате чего в Composer 2 пакет заменили на форк composer/package-versions-deprecated.
    Так или иначе, а PHPUnit 9 и PHPUnit 8.5 получат Life Support. Это значит, что в них будет гарантирована работа на PHP 7.3 (7.2 соответственно) и всех последующих версиях PHP.


c9ee7880391644e4aef6cc28ca681ab0.png PHP Internals


cf862d9072784d04b621238ec137f2ca.png Инструменты


  • phpsandbox.io — Аналог codepen/jsfiddle только для PHP. Веб-сайт для быстрого тестирования и демонстрации кода. Кроме голого PHP можно сделать код на Laravel, ReactPHP или импортировать любой проект с Гитхаба.
  • beyondcode/httpdump — Приложение на Laravel для отладки водящих HTTP-запросов (отладка веб-хуков и т.п.). Создает случайные URL и дампит в красивом виде все запросы к ним. Демо httpdump.app.
  • clue/php-socket-raw — Легковесная ООП-обертка для низкоуровневого расширения сокетов PHP (ext-sockets).
  • zenstruck/foundry — Фабрика для создания удобных фикстур с автодополнением в IDE для Symfony и Doctrine.
  • spatie/backtrace — Обертка над debug_backtrace() для удобной работы со стеком вызовов.
  • nette/tracy — Инструмент для отладки: дебагбар, красивые ексепшены, логирование, профилирование, все в одном.
  • JetBrains/phpstorm-attributes — В PhpStorm 2020.3 будут из коробки доступны несколько атрибутов PHP 8. Теперь они вынесены в отдельный пакет.


96b65e92179a40f2bd1884549973ddd5.png Symfony


314bd0f0dfc54e3fa7f0c0daef1a2d25.png Laravel


329bec7c1e914963a1c5d2f2bfe99995.png Разное


8dcc236774104f8286a40ceaea553820.png Аудио/Видео

Спасибо за внимание!

Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку хабра или телеграм.

Больше новостей и комментариев в Telegram-канале PHP Digest.


Прислать ссылку
Поиск ссылок по всем дайджестам
← Предыдущий выпуск: PHP-Дайджест № 192

© Habrahabr.ru