PHP-Дайджест № 122 (11 – 25 декабря 2017)
Свежая и последняя в этом году подборка со ссылками на новости и материалы. В выпуске: пара свежих предложений из PHP Internals, полезные инструменты, материалы по фреймворкам и асинхронному PHP и другое.
С наступающим Новым годом! Приятного чтения.
Новости и релизы
- Статистика PHP-репозиториев на GitHub за 2017 год
- doctrine/orm v2.6.0
- Phalcon 3.3.0
PHP Internals
- RFC: Scalar Pseudo-type — Предлагается добавить псевдотип
scalar
для тайпхинтинга любых скалярных значений:function f(scalar $param) { echo "{$param}\n"; }
- RFC: Namespace-scoped declares — Предлагается сделать возможным установку директив интерпретатора для целых пространств имен, а не только для каждого файла. Такая возможность позволит добавлять и гибко использовать другие директивы, контролирующие поведение интерпретатора:
// bootstrap.php namespace_declare('Vendor\Lib', [ 'strict_types' => 1, ... ]);
Инструменты
- atk4/data — ORM, в которой реализована оригинальная модификация паттерна Data Mapper. Подробнее о том, что не так с другими ORM, и чем хороша эта в посте автора.
- myclabs/DeepCopy — Позволяет создавать глубокие копии объектов.
- mikeerickson/phpunit-pretty-result-printer — Расширение для PHPUnit выводит результаты в красивом сгруппированном виде:
Материалы для обучения
- Symfony
- Как управлять переводами в Symfony?
- Symfony Flex Private Recipes: создание, настройка и использование
- Неделя Symfony #572 (11–17 декабря 2017)
- Неделя Symfony #573 (18–24 декабря 2017)
- Yii
- Yii 2.1 и заморозка Yii 2.0
- Yii development notes #18
- LUYA 1.0 — Первый релиз мощной CMS.
- dmirogin/fakemodel — Инструмент для удобной генерации моделей с тестовыми данными. Прислал dmirogin.
- Laravel
- Отложенные задачи и очереди на Laravel
- Vanilo — E-commerce фреймворк на базе Laravel.
- Расширение моделей в Eloquent ORM
- Zend
- Zend Expressive 3 Preview
- Неделя Zend Framework 2017–12–14
- Async PHP
- react/http v0.8.0 — Массивное обновление HTTP-сервера на ReactPHP. Поддержка PSR-7, и долгожданная полноценная поддержка загрузки файлов. Последнее позволит в полной мере использовать php-pm для запуска демонизированных приложений.
- О реализации Middleware для ReactPHP HTTP Server
- voryx/WebSocketMiddleware — WebSocket Middleware для react/http.
- amphp/parallel-functions — Набор функций для параллельного исполнения кода на базе компонента amphp/parallel без дополнительных расширений:
use function Amp\ParallelFunctions\parallelMap; use function Amp\Promise\wait; $responses = wait(parallelMap([ 'https://google.com/', 'https://github.com/', 'https://stackoverflow.com/', ], function ($url) { return file_get_contents($url); }));
- Пишем PSR-7 фреймворк: Структура и работа с HTTP, Контроллеры и маршрутизация
- Бенчмарки AMQP-клиентов для PHP
- VS Code в качестве редактора PHP
- Как анализировать тональность твитов с помощью машинного обучения на PHP
- Как прочитать большой файл средствами PHP (не грохнув при этом сервак)
- Управление зависимостями в PHP
- Руководство по написанию защищённых PHP-приложений в 2018-м
Занимательное
- Забавные головоломки на PHP
- symfony/thanks — Поблагодарите авторов библиотек и фреймворков, которыми вы пользуетесь, с помощью этого инструмента:
Спасибо за внимание!
Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
Вопросы и предложения пишите на почту или в твиттер.
Прислать ссылку
Поиск ссылок по всем дайджестам
← Предыдущий выпуск: PHP-Дайджест № 121