1 July 2019

PHP-Дайджест № 159 (17 июня – 1 июля 2019)

Website developmentPHPSymfonyYiiLaravel

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.4.0 alpha 2, BeerPHP, обзор свежих RFC из PHP Internals, включая Strict operators directive, порция полезных инструментов, видео и многое другое.

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



Новости и релизы



PHP Internals


  • [RFC] Normalize arrays' «auto-increment» value on copy on write — Предлагается сбрасывать значение “автоинкремента” при копировании массива, так, как если при копировании новый пустой массив был бы по одному заполнен элементами из старого.
    Скрытый текст
    $array = [0, 1, 2, 3];
    unset($array[3], $array[2]);
    $arrayCopy = $array;
    $arrayCopy[] = 2;
    
    // Если предложение будет принято, то следующее выражение будет истинно.
    // А на данный момент массивы не эквивалентны.
    assert($arrayCopy === [0, 1, 2]);
    
  • [RFC] Strict operators directive — PHP производит неявное преобразование типов для большинства операторов. И поскольку правила конвертации довольно сложные, то часто это может приводить к непредсказуемым результатам. В этом RFC предлагается ввести новую директиву strict_operators, которая ограничит преобразования типов и позволит бросать ошибку TypeError для несовместимых операндов. Документ очень подробный и описывает множество примеров, рекомендую просмотреть весь. Также директива меняет поведение конструкции switch.
  • [RFC] Deprecations for PHP 7.4 — Ещё пачку функциональностей предлагается объявить устаревшими в 7.4 и затем удалить в 8.0. Из интересного:
      • Cейчас в implode() аргументы можно передавать в любом порядке – предлагается оставить только канонический implode(string $glue, array $pieces);
      • Вместо float можно использовать тип real – последний будет убран.
  • [RFC] Add str begin and end functions — Предлагается добавить функции str_begins(), str_ibegins(), str_ends(), str_iends(), mb_str_begins(), mb_str_ibegins(), mb_str_ends(), и mb_str_iends().
  • Для репозитория php-src добавили пайплайн в Azure DevOps.
  • audio PHP Internals News #15 — Об улучшениях base_convert() с Scott Dutton.
  • audio PHP Internals News #16 — С Joe Watkins об [RFC] Unbundle ext/recode.

Инструменты



Symfony



Laravel



Yii


  • cebe/yii2-app-api — Шаблон приложения на Yii2 для быстрого создания API на основе спеки OpenAPI.

Async PHP



Материалы для обучения



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

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

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

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

Tags:дайджестphp-дайджестPHPSymfonyLaravelYiiPHP 7.4
Hubs: Website development PHP Symfony Yii Laravel
+56
15.1k 44
Comments 7
Top of the last 24 hours