PHP-Дайджест № 190 (5 – 19 октября 2020)

wny4s3jqlhie9xeaz5o06dc7ss0.jpeg

Фото: Илья Шихалеев.

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 8.0 RC 2, Xdebug 3 beta, PhpStorm EAP с поддержкой PHPStan и Psalm, порция полезных инструментов, статьи, видео, митапы.

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


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


  • PHP 8.0.0 RС 2 — Следующий релиз-кандидат ожидается 29 октября. Для 8.0 создана ветка, а master репозитория теперь используется для PHP 8.1.

    Обзоры новых фич в PHP 8 можно посмотреть в постах Что нового в PHP 8 и PHP 8: до и после, также в блоге PhpStorm об использовании в IDE, обзоры Ларри Гарфильда и на PHP.Watch.

    Попробовать PHP 8 можно из докера php:rc-cli, на маке через shivammathur/homebrew-php, собрать из исходников с помощью github.com/php-build/php-build.

  • Xdebug 3.0 beta 1 — В третьей версии переработана конфигурация, чтоб начать работу с отладчиком было легче: достаточно одной опции xdebug.mode=debug. Порт по умолчанию, изменен с 9000 на 9003 — наконец-то не будет конфликтов с php-fpm, который тоже использует 9000. Подробнее в руководстве по обновлению.
  • Composer 2.0.0 RC2 — Последний релиз-кандидат перед финальной версией. Чтобы попробовать сейчас: composer self-update --preview.
  • PhpStorm 2020.3 EAP — Во втором билде раннего доступа доступна поддержка PHPStan и Psalm: запуск инспекций, автодополнение тегов, поддержка типов, и даже первый тривиальный кейс для дженериков через @template.

    Кстати, в прошедшем недавно AMA на Reddit с командой PhpStorm Никита дал подробный ответ о состоянии дел и перспективах дженериков в PHP. Если коротко, то стираемые дженерики являются наиболее жизнеспособным подходом с чисто технической точки зрения, но в тоже время он очень не консистентен и оставляет дыру в типобезопасности.

  • habr29 ноября в Москве конференция PHP Russia будет офлайн.
  • phpcommunity.ru — PHP-сообщества в России, Беларуси, Украине.

    Месяц PHP-митапов: каждую субботу с 17 октября по 14 ноября.


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


  • PHP-DI — Независимый от фреймворка DI-контейнер.
  • markrogoyski/math-php — Мощная современная математическая библиотека для PHP.
  • Danack/FloatHex — Функции для преобразования числа с плавающей точкой в шестнадцатеричную строку и обратно, а также для отображения двух чисел с плавающей точкой в виде двоичного представления. Или еще раз почему 0.1 + 0.2 === 0.3 -> false
    Скрытый текст
    echo float_compare(0.3, 0.1 + 0.2);
    >>
    ┌──────┬─────────────┬──────────────────────────────────────────────────────┐
    │ Sign │ Exponent    │ Mantissa                                             │
    │    0 │ 01111111101 │ 0011001100110011001100110011001100110011001100110011 │
    │    0 │ 01111111101 │ 0011001100110011001100110011001100110011001100110100 │
    │    - │ ----------- │ -------------------------------------------------xxx │
    └──────┴─────────────┴──────────────────────────────────────────────────────┘
    
  • marcocesarato/PHP-Antimalware-Scanner — Сканер для поиска вредоносного кода в PHP-файлах.
  • Prometheus PHP — Клиент для prometheus.io на PHP.
  • shivammathur/setup-php — GitHub action для установки PHP, расширений, и прочего для последующего использования в своих пайплайнах. Небольшой обзор в блоге GitHub.


96b65e92179a40f2bd1884549973ddd5.png Symfony


314bd0f0dfc54e3fa7f0c0daef1a2d25.png Laravel


732rpqll-yvu0hrtaw6yeism-de.png Async PHP


  • clue/reactphp-mq — Легковесная очередь сообщений в памяти на базе ReactPHP.


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


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


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

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


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

© Habrahabr.ru