Фото David Stockton.

Подборка свежих новостей, инструментов и материалов из мира PHP.

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

Этот дайджест подготовлен совместно с Insolita. Если понравился выпуск, плюсаните пост, пожалуйста.

⚡️ Новости


  • PHP version stats: January, 2022
    Свежая статистика по версиям PHP по данным с packagist.org. Версия 8.1 вышла всего месяц назад, но уже набирает 9.1%. Однако, всё ещё очень много PHP 7.4 (44%).

    Спасибо Пятиминутка PHP.

  • [RFC] User Defined Operator Overloads
    Судя по ходу голосования предложение добавить перегрузку операторов в PHP не будет принято. Но автор заверил, что в таком случае выпустит реализацию в качестве расширения и продолжит работу.

    Ну а пока перегрузку операторов уже можно использовать с помощью lisachenko/z-engine. Вот пример реализации операторов для матриц: lisachenko/native-php-matrix


???? Инструменты


  • viewi/viewi — Мощный инструмент для создания реактивных приложений используя только PHP и HTML.
    По сути, это серверный шаблонизатор + фронтенд фреймворк. Но только все компоненты и всю логику вы описываете на PHP и HTML и затем они транспайлятся в нативный JS.
    На сайте проекта viewi.net подробно описан механизм работы и есть примеры кода. Также можно пройти пошаговый туториал.
  • symfony/html-sanitizer — Новый компонент для очистки недоверенного HTML и защиты от XSS.
  • Infection PHP 0.26.0 — Обновление фреймворка для мутационного тестирования на PHP. В новой версии добавлены HTML-отчеты, мутация только измененных строк, и другое.
  • EventSaucePHP/ObjectHydrator — Библиотека для гидрации сырых данных (типа json) в объекты.
  • Roach PHP — Библиотека для web-скрапинга, порт популярной Python-библиотеки Scrapy.
  • Orangesoft-Development/backoff — Реализация алгоритма экспоненциальной выдержки (back-off algorithm).
  • ajthinking/archetype — Пакет с простым интерфейсом для модификации PHP файлов/классов.
  • framjet/php-enum-bitmask — Использование перечислений из PHP 8.1 как битовых масок.
  • beyondcode/httpdump — Приложение на Laravel для отладки входящих HTTP-запросов (отладка веб-хуков и т.п.). Создает случайные URL и дампит в красивом виде все запросы к ним. Демо httpdump.app.
  • ankitpokhrel/tus-php 1.0 — Реализация сервера и клиента tus.io открытого протокола возобновляемых загрузок файлов. Протокол используется, например, в Vimeo и Cloudflare.


Symfony




Laravel




Yii




???? Статьи




???? Аудио/Видео




???? Сообщество





Подписывайтесь на Telegram-канал PHP Digest.

Этот дайджест подготовлен совместно с Insolita. Если вам понравился выпуск, подпишитесь на Юлию в твиттере и поставьте плюс в пост, пожалуйста.


Заметили ошибку или опечатку? Сообщите в личку хабра или телеграм.

Прислать ссылку можно через форму или просто напишите мне в телеграм.
Поиск ссылок по всем дайджестам
Предыдущий выпуск: PHP-Дайджест №218

Комментарии (5)


  1. spasibo_kep
    10.01.2022 22:15
    +4

    Опрос сообщества завершён на отметке 3100 ответов, начали подводить итоги: детали в феврале.


  1. Ionenice
    11.01.2022 17:01

    Как-то надоедают пустые статьи где либо ничего нету, либо одна вода. Статья называется "How we are adding Async PHP to our Stack", внутри статьи краткое описание нескольких доступных инструментов и бесполезные результаты нагрузочного тестирования одного абстрактного эндпоинта... на этом статья закончилась. Наверно "experienced PHP developers who have a solid knowledge of the language" не учавствовали в написании статьи.

    Немного печально, что хороших статей по Async Php очень мало, хотя это всё очень привлекательно звучит и было бы интересно почитать про подобный опыт


    1. shandy
      11.01.2022 20:42

      А о чем конкретно из async php хотелось бы почитать?

      Я как раз собираюсь подготовить серию статей по мотивам моего доклада с конференции про Swoole. Вот думаю куда смещать акцент - больше практических результатов или больше теории.


      1. Ionenice
        11.01.2022 20:51
        +1

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

        Мне хочется попробовать всё это самому, но пока не хватает желания, времени, и, возможно, опыта, а если начать самому, то до прода это дайдёт не скоро и явно в каких-то мелких проектах в качестве эксперимента :)

        А так на swoole засматриваюсь, но скорее всего в виде Octane


    1. Grikdotnet
      11.01.2022 21:36

      По названию статьи про roadrunner понятно, что авторы не знают о чем пишут. Roadrunner синхронный. Это application server, его отличие от cgi-модели (modphp, fpm) в отсутствии очистки памяти после обработки запроса. А runtime обычный синхронный, с блокирующими вызовами.