PHP-Дайджест № 117 – свежие новости, материалы и инструменты (10 – 24 сентября 2017)

de525b8b9f694ea5a59e120ae5f04cad.jpg

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.2.0 RC 2, о будущем HHVM, предложения из PHP Internals, подборка чатов по PHP, видео с конференций и митапов, и многое другое.
Приятного чтения!



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


  • О будущем HHVM — Не так давно многие проекты отказались от поддержки HHVM. Теперь команда HVVM анонсировала, что в долгосрочной перспективе не планирует стремиться к полной поддержке PHP 7. Вместо этого, ребята из Facebook сосредоточатся на Hack. Тем не менее в ближайшее время планируется исправить проблемы совместимости с популярными инструментами вроде Composer и PHPUnit.
  • PHP 7.2.0 RC 2 — Второй релиз-кандидат доставлен по расписанию. Следующий выпуск ожидается 28 сентября. Об изменениях ветки можно почитать тут и тут. Протестировать с помощью подготовленного Docker-образа.
  • Sylius v1.0.0 — Мажорный релиз популярной е-коммерс платформы на базе Symfony.

c9ee7880391644e4aef6cc28ca681ab0.png PHP Internals


  • [RFC] RFC Workflow & Voting — Предлагается регламентировать процесс RFC, в частности, при голосованиях повысить порог принятия изменений до 2/3. Также обозначены критерии для тех, кто может голосовать.
  • [RFC] Class Friendship — Вторая попытка реализовать концепцию дружественных классов. Дружественный класс имеет доступ к private и protected полям класса, в котором он объявлен дружественным.
  • [RFC] Fiber — Интересное дополнение генераторов в PHP, которое позволило бы упростить асинхронный код.
  • Pre-draft PipeOp v2 — В Internals обсуждается черновик предложения для pipe-оператора. Оригинальное предложение было раскритиковано из-за использования плейсхолдера $$ и теперь предложен более простой вариант:
    $x = "hello" 
    |> 'strtoupper' 
    |> function($x) { return $x . " world"; }; 
    // $x === "HELLO world"
    

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


  • PoweredLocal/vrata — Реализация паттерна для микросервисов API Gateway на основе Lumen.
  • jamesmoss/flywheel — База данных на основе файлов (JSON, YAML, или Markdown) и с билдером запросов.
  • spatie/macroable — Трейт для динамического добавления методов в класс. Подробнее в посте.
  • felixfbecker/php-language-server — PHP-реализация VS Code Language Server Protocol.
  • BetterReflection 2.0.0 — Рефлексия без загрузки классов.
  • tagua-vm/tagua-vm — Экспериментальная виртуальная машина PHP на Rust и LLVM.

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


  • 96b65e92179a40f2bd1884549973ddd5.png Symfony
    • ruИспользование пользовательских функций в Symfony и Doctrine
    • ruИзбегание сущностей в формах Symfony и переосмысление разработки форм Symfony — Прислал seyfer.
    • Добавление кастомного кода в ответы API
    • Новое в Symfony 3.4
    • Неделя Symfony #559 (11–17 сентября 2017)
    • Неделя Symfony #560 (18–24 сентября 2017)

  • 314bd0f0dfc54e3fa7f0c0daef1a2d25.png Laravel
    • Voyager 1.0 — Админка для Laravel.
    • kjdion84/turtle — Скаффолдинг для CRUD, аутентификации, ролей, прав доступа, форм, и прочего.
    • nahid/talk — Система личных сообщений для приложения на Laravel.
    • Расширяем модели в Eloquent
    • Конфиг Nginx Unit + Docker, PHP, и Laravel
    • videoLaravel Podcast s03e02: Интервью с Taylor Otwell

  • 8bead8b690f148298fc7c479f1449eda.png Zend
    • Логирование в PHP-приложениях с помощью zend-log
    • Emitting Responses with Diactoros
    • Неделя Zend Framework 2017–09–14

  • Async PHP
    • clue/php-buzz-react — Асинхронный PSR-7 HTTP-клиент на основе ReactPHP.
    • Введение в генераторы на PHP
    • Разработка игры с помощью React.js и PHP, 2
    • Кэширование с помощью промисов на ReactPHP

  • CMS
    • Вопросы выбора JS-библиотеки в WordPress — В связи патентным нюансом в лицензии React, разработчики WordPress анонсировали отказ от React для фронтенд компонентов. Однако после официальной смены лицензии на MIT все-таки вернулись к его рассмотрению, а также фреймворк-независимого решения.
    • postlight/headless-wp-starter — WordPress в качестве RESTful бекенда и React на фронте.
    • Joomla 3.8
    • Статистика спонсоров и контрибьюторов Drupal
    • Magento Tech Digest #3 (September 4 — 19, 2017)

  • Замыкания, анонимные классы и альтернативный подход к мокам
  • Минитуториал по PhpSpec
  • Symfony Console — хелперы и другие возможности
  • Прощайте, контроллеры; привет, обработчики запросов
  • О новой PHP-библиотеке для Сloudflare
  • От PHP к JavaScript с Node.js
  • JSON Web Token (JWT) в качестве PHP сессии
  • UML-диаграммы в PhpStorm 2017.2
  • habrКак я создавал прибыльный глобальный SaaS проект, от разработки до продаж
  • habrPHP жив. PHP 7 на практике

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


  • videoО Peachpie — компиляторе PHP для .NET
  • videoВидео докладов с Laracon EU 2017

cc24d9c95c9841988f8299a8b285e6f6.png Занимательное


  • Подборка чатов по PHP
    • [T] phpgeeks
    • [T] prophp7
    • [T] phpclubru
    • [T] PhpFlow
    • [T] laravel_pro
    • [T] laravelrus
    • [T] symfony_php
    • [S] Larachat
    • [S] Zend Framework
    • [S] Yii
    • [S] phpchat.co
    • [S] php.ug
    • [S] Drupal
    • [S] WordPress

    Знаете еще? Пишите в комментариях!
  • Новый слоник с ZendCon 2017 —
    56eadbcdc45f42eb94abad2c73d12853.jpeg


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

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

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

© Habrahabr.ru