PHP 8.5: Что изменилось? Полный список нововведений и устаревших функций
PHP 8.5 вышел и приносит значительные улучшения языка, направленные на повышение выразительности кода, улучшение обработки ошибок и отказ от устаревших подходов. Это обновление особенно важно для разработчиков, которые стремятся писать более чистый и безопасный код, а также для тех, кто планирует миграцию с предыдущих версий.
Ниже представлен полный и структурированный список всех изменений в PHP 8.5, разделённый на категории. Каждый пункт ведёт на детальную статью с примерами использования, объяснением причин изменений и рекомендациями по адаптации вашего кода.
Новые возможности в PHP 8.5
- PHP 8.5: Оператор pipe (
|>) - PHP 8.5:
Filter: Выбрасывание исключений при сбоях валидации - PHP 8.5: Новая INI директива
max_memory_limitзадающая верхний пределmemory_limit - PHP 8.5: Curl: новая функция
curl_multi_get_handles - PHP 8.5: Intl: новый класс
IntlListFormatter - PHP 8.5: CLI:
php --ini=diffотображает нестандартные директивы INI - PHP 8.5: Новые функции массивов
array_first()иarray_last() - PHP 8.5: новая функция
locale_is_right_to_leftи методLocale::isRightToLeft - PHP 8.5: Поддержка трассировки стека для фатальных ошибок PHP
- PHP 8.5: Новые функции
get_exception_handlerиget_error_handler - PHP 8.5: Новая константа
PHP_BUILD_PROVIDER - PHP 8.5: Новая константа
PHP_BUILD_DATE
Устаревший функционал в PHP 8.5
- PHP 8.5: Отказ от использования нестандартных имён приведения типов
- PHP 8.5: Функция
mysqli_executeобъявлена устаревшей - PHP 8.5:
curl_close()иcurl_share_close()объявлены устаревшими - PHP 8.5: Функция
xml_parser_freeобъявлена устаревшей - В PHP 8.5 функция
socket_set_timeoutобъявлена устаревшей - PHP 8.5: Вывод из обработчиков буфера вывода объявлен устаревшим
- PHP 8.5: Все константы
MHASH_*объявлены устаревшими
Итог: PHP 8.5 — шаг к выразительности и надёжности
PHP 8.5 продолжает курс на превращение языка в более строгий, безопасный и удобный для разработчика инструмент. Основной фокус версии — улучшение синтаксиса (оператор |>, функции array_first()/array_last()), усиление контроля над кодом (атрибут #[\NoDiscard], final-промоушен, улучшенный Directory) и расширение возможностей атрибутов (константы, трейты, замыкания в константных выражениях). Эти изменения позволяют писать более плотный, читаемый и предсказуемый код, сокращая шаблонность и уменьшая пространство для ошибок.
Важным трендом является постепенное очищение ядра языка — устаревание исторических функций (__sleep()/__wakeup(), нестандартные приведения типов) и превращение ключевых расширений в неотъемлемую часть PHP (OPcache). Вместе с усилением безопасности (новый URL API, улучшения cURL, трассировка фатальных ошибок) это делает экосистему PHP более целостной и готовой к современным требованиям разработки.
PHP 8.5 — это не революция, а последовательная эволюция, которая делает язык удобнее для ежедневного использования, не ломая обратную совместимость без необходимости. Для разработчиков это означает меньше boilerplate-кода, больше возможностей для выразительных решений и постепенную, но уверенную миграцию в сторону более чистого и поддерживаемого кода. Следите за дальнейшими обновлениями PHP на нашем ресурсе, чтобы быть в курсе всех изменений в экосистеме языка.