PHP-Дайджест № 175 (25 февраля – 10 марта 2020)
Свежая подборка со ссылками на новости и материалы. В выпуске: релизы Laravel 7 и CodeIgniter 4, атрибуты v2 и другие RFC-предложения из PHP Internals, порция полезных инструментов, видео, подкасты и многое другое.
Приятного чтения!
Новости и релизы
- CodeIgniter 4.0 — Спустя 5 лет разработки вышла новая версия фреймворка. Переписан с нуля, но всё так же в виде единого пакета. Работает на PHP 7.2+, реализованы PSR-1,3,4.
- Ближайшие мероприятия:
• Ярославль, 12 марта: BeerPHP
• Воронеж, 16 марта: 2-й PHP-митап городского чата
• Екатеринбург, 26 марта: 3-й PHP-митап
• Казань, 28 марта: 2-й PHP-митап
• skyeng/php-communities — Открытый список PHP-событий, спикеров и организаторов.
PHP Internals
- [RFC] Attributes v2 — Вторая попытка добавить полноценные аннотации в PHP с синтаксисом двойных угловых скобок
<<...>>
. Готов черновик реализации. Ранее уже были предложения о простых аннотациях и атрибутах, последнее предложение как раз не прошло голосование.Скрытый текстuse Doctrine\ORM\Mapping as ORM; <
UserRepository::class])>> < > class User { < > public int $id; < true])>> public string $email; < > public ?Address $address; } - [RFC] Increment/Decrement Fixes — Операторы инкремента и декремента в некоторых случаях ведут себя не так же, как явное прибавление/вычитание единицы с присвоением. Например: Скрытый текстВ PHP 8 предлагается исправить эти и другие несоответствия и бросать
TypeError
где необходимо. - [RFC] Stringable — Предложение от Nicolas Grekas принято. В PHP 8 можно будет использовать union-тип
string|Stringable
там, где ожидается строка, и передавать классы с__toString()
. При этом интерфейс явно добавлять не нужно. - [PR] Make sorting stable — Стандартные функции сортировки в PHP не являются стабильными. Это значит, что оригинальный порядок элементов с одинаковыми значениями не гарантируется (пример). Предлагается это исправить и сделать сортировки стабильными. Правда, при большом количестве одинаковых элементов такой фикс отразится на производительности.
Инструменты
- shivammathur/setup-php — GitHub action для добавления в свой воркфлоу, который подготовит среду PHP для дальнейших шагов.
- minicli/minicli — Пакет для создания консольных утилит. Серия постов в поддержку.
- cebe/php-openapi — Инструмент читает OpenAPI файлы с описанием сервисов в удобные для работы объекты PHP.
Symfony
Laravel
Yii
- yiisoft/friendly-exception — Релиз первого пакета из Yii 3. Интерфейс для описания человекопонятных исключений сразу с возможным решением.
Laminas
Async PHP
Материалы для обучения
Аудио/Видео
Спасибо за внимание!
Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
Вопросы и предложения пишите на почту или в твиттер.
Больше новостей и комментариев в Telegram-канале PHP Digest.
Прислать ссылку
Поиск ссылок по всем дайджестам
← Предыдущий выпуск: PHP-Дайджест № 174