PHP-Дайджест № 144 (12 – 26 ноября 2018)

le4oeu3-zi7dfqnltwwfjv2z_xq.jpeg

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3.0RC6, PhpStorm 2018.3 и другие релизы, Symfony покидает PHP-FIG, свежие предложения и новости PHP Internals, порция полезных инструментов, видеозаписи с прошедших митапов и конференций и многое другое.
Приятного чтения!


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


  • PHP 7.3.0RC6 — Шестой и, вероятно, последний релиз-кандидат ветки 7.3. Затаив дыхание ждем финального релиза уже 6 декабря. А пока можно еще раз посмотреть что нового в 7.3 в свежих обзорах тут и тут. Доступно немного бенчмарков, которые показывают прирост производительности ~10% по сравнению с 7.2.
  • HTTP/3 поверх QUIC — Принято решение о том, что следующий стандарт HTTP будет использовать QUIC, который, в свою очередь, работает поверх UDP, а не TCP. Доступен обзор QUIC от CloudFlare, включая проблему с NAT и прочие нюансы.
  • habrДоступен PhpStorm 2018.3
    • Поддержка DQL
    • PHP CS Fixer
    • Новые рефакторинги
    • Деплоймент на множество хостов одновременно
    • GitHub Pull Requests
    и много других улучшений!
  • Symfony покидает PHP-FIG — Лидер Symfony Фабьен удалил себя и фреймворк из списка участников группы PHP-FIG. И прокомментировал свое решение в Твиттере:

    PHP-FIG **was** a great way to create a common ground for PHP projects, **interoperability-first** #php

     — Fabien Potencier (@fabpot) November 20, 2018

    В этом свете все еще актуальным кажется открытые письмо Энтони Феррара к PHP-FIG, в котором он говорит: «Пожалуйста, перестаньте решать общие проблемы. Решите 50% проблем, не 99%».
    Два года назад группу PHP-FIG уже покинули представители Laravel, Propel, Doctrine, Guzzle, Stash и Aura, в основном из-за того, что особо не принимали участия в обсуждениях.


c9ee7880391644e4aef6cc28ca681ab0.png PHP Internals


  • RFC: Password Hashing Registry — Предложение принято для следующей версии PHP и позволяет в расширениях регистрировать собственные алгоритмы хеширования.
  • RFC: Spread Operator in Array — Предлагается добавить оператор ... для массивов.
    Скрытый текст
    $parts = ['apple', 'pear'];
    $fruits = ['banana', 'orange', ...$parts, 'watermelon'];
    // ['banana', 'orange', 'apple', 'pear', 'watermelon'];
    
    
  • [RFC] Preloading — Голосование по RFC о предзагрузке файлов завершилось. Все члены core-team единогласно поддержали это предложение. А значит в следующем году в 7.4 нас ждет возможность предварительно загружать в опкэш любые файлы. Все функции и классы, объявленные в этих файлах, будут доступны для всех последующих запросов, как если бы это были встроенные элементы вроде strlen () или Exception.

    Идут детальные обсуждения поддержки данной возможности в Composer и Symfony (прислал @dmitrybalabka), а также доступен концепт плагина Ayesh/Composer-Preload.


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


  • spiral/roadrunner — Высокопроизводительный сервер приложений, балансировщик нагрузки и менеджер процессов для PHP реализованный на Go. В поддержку интересный рассказ о создании RoadRunner и кардинальном изменении подхода к разработке PHP-приложений.
  • cebe/php-openapi — Инструмент читает OpenAPI файлы с описанием сервисов в удобные для работы объекты PHP.
  • tgalopin/html-sanitizer — Библиотека для обработки, чистки и санитайзинга HTML-данных, пришедших от пользователя. Доступен такжебандл для Symfony. Прислал berezuev.
  • jeremykendall/php-domain-parser — Парсер доменов, который распознает регистрируемую часть домена и публичный суффикс.
  • nginxconfig.io — Генератор конфига Nginx.
  • rryqszq4/ngx_php7 — Встраиваемый в Nginx интерпретатор PHP. Позволяет создавать обработчики запросов на PHP, модифицировать запрос/ответ, фильтровать тело ответа и заголовки, и прочее.
  • php-decimal/ext-decimal — Расширение реализует десятичную арифметику с произвольной точностью и корректным округлением. Пост от автора в поддержку.
  • Hywan/php-ext-wasm — Экспериментальное расширение, которое позволяет запускать бинарники WebAssembly прямо из PHP. Потенциально может дать возможность динамически подгружать модули, реализованные на других языках.


329bec7c1e914963a1c5d2f2bfe99995.png Материалы для обучения


8dcc236774104f8286a40ceaea553820.png Аудио и видеоматериалы

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

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

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

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

© Habrahabr.ru