Октябрь 2023

Октябрь 2023

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

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

Новости

Вышли PHP 8.1.25 и PHP 8.2.12

В этих выпусках несколько исправлений ошибок и улучшений в модулях Core, CLI, CType, DOM, Fileinfo, Filter, Hash, Intl, MySQLnd, Opcache, PCRE, SimpleXML, Streams, XML и XSL.

Вышел PHP 8.3.0 RC5

Очередной RC был выпущен в соответствии с расписанием. Следующий релиз – RC6 ожидается 9 ноября и станет последним перед финальным релизом PHP 8.3.

С подробным списком изменений в PHP 8.3, можно ознакомиться на сайтах php.watch или stitcher.io.

Версии PHP 8.3.0 RC доступны в репозиториях Remi для Fedora/RHEL, репозиториях Ondrej для Debian/Ubuntu LTS, образах Docker на Docker Hub и скомпилированных двоичных файлах Windows на windows.php.net.

🎂 Symfony исполнилось 18 лет

18 октября 2005 года был сделан первый публичный коммит проекта Symfony.

Открыта программа раннего доступа PhpStorm 2023.2

В первой версии EAP улучшена поддержка PHP 8.3, добавлен мастер создания новых проектов для Symfony и поддержку преобразования аннотаций Doctrine в атрибуты.

PHP Core

Большинство новостей ядра PHP подробно освещаются в серии PHP Core Roundup от PHP Foundation, мы лишь быстро по ним пробежимся:

📣 RFC: Rounding Integers as int

На данный момент функции округления round(), ceil() и floor() возвращают число с плавающей точкой, но при использовании целых чисел выше 2^53 получаются неожиданные результаты из-за потери точности.

Marc Bennewitz предлагает выполнять округление для заданного целого числа и возвращать полученное целое число, если это возможно.

📣 RFC: Unbundle ext/imap, ext/pspell, ext/oci8, and ext/PDO_OCI

Derick Rethans предлагает удалить модули из ядра PHP и перенести в репозиторий PECL.

📣 RFC: Multibyte for trim function mb_trim, mb_ltrim and mb_rtrim

Yuya Hamada предлагает добавить многобайтовую поддержку для функций обрезки.

📣 RFC: RFC1867 for non-POST HTTP

RFC1867 определяет тип контента multipart/form-data. PHP поддерживает анализ этого типа контента, но только для POST-запросов. Если осуществляется POST-запрос и тип содержимого multipart/form-data, тело запроса немедленно обрабатывается перед запуском PHP-скрипта и заполняется в суперглобальные переменные $_POST и $_FILES. Эта функция запускается автоматически и не предоставляется непосредственно пользователю.

Ilija Tovilo предлагает добавить новую функцию request_parse_body(), чтобы вывести существующую функциональность на пользовательский уровень и использовать ее для других HTTP-методов, например, PUT и PATCH.

📣 RFC: Change the edge case of round()

Saki Takamachi предлагает изменить поведение функции round в крайних случаях и перестать ожидать от чисел с плавающей точкой десятичного поведения и начать ожидать, что числа с плавающей точкой будут вести себя как числа с плавающей точкой.

RFC: Increasing the default BCrypt cost

RFC принят единогласно. Большинством голосов было принято, что в PHP 8.4 значение cost по умолчанию будет увеличено до 12.

RFC: A new JIT implementation based on IR Framework

RFC также принят единогласно в обоих голосованиях: в PHP 8.4 появится новая реализация JIT, тем временем старая реализация будет удалена.

Инструменты

  • saloonphp/saloon – Пакет для создания красивых API-интеграций и SDK.

  • dunglas/frankenphp – Современный сервер для PHP-приложений со всем необходимым: автоматическое получение и продление SSL, HTTP/3, 103 Early Hints, Zstandard и работа в режиме воркера для PHP. Он построен на базе Caddy и предлагает самый простой процесс настройки.

  • utopia-php/framework – Лёгкий и быстрый микро PHP-фреймворк, который легко освоить, поддерживается командой Appwrite.

  • phpro/soap-client – Универсальный SOAP-клиент для PHP.

  • flow-php/flow – Сильно типизированный фреймворк обработки данных.

  • benholmen/defrag – Вывод результатов дефрагментации диска для тестов PHPUnit.

  • flavioheleno/watchr – Утилита командной строки и GitHub Action, проверяющая сроки действия сертификатов доменных имен и TLS.

  • ad-aures/castopod – Хостинг платформа для подкастов с открытым исходным кодом, созданная на основе CodeIgniter.

Laravel

Yii

Статьи

Видео

Сергей Пантелеев
Релиз-менеджер PHP 8.2
Роман Пронский
Администратор PHP Foundation
Краткий дайджест в нашем Telegram
Ещё больше новостей в блоге компании JetBrains
PHP-дайджест в видео формате на канале CutCode
Рассылка PHP-дайджестов
Подпишитесь на рассылку, чтобы не пропустить новый выпуск

Нажимая «Подписаться» я даю согласие на обработку персональных данных.

Мы заботимся о ваших данных и не будем злоупотреблять доверием.