Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама
Middle PHP 8+

Що нового в PHP 8.5?

PHP 8.5 (листопад 2025) - головні нововведення:

Оператор конвеєра |> - передає значення ліворуч у callable праворуч, без проміжних змінних і вкладених викликів:

$slug = $title
    |> trim(...)
    |> mb_strtolower(...)
    |> (fn (string $s) => preg_replace('/\s+/', '-', $s));

// замість
$slug = preg_replace('/\s+/', '-', mb_strtolower(trim($title)));

Кожен крок має приймати один параметр, тому функції з кількома аргументами загортають у стрілкову функцію.

clone з новими значеннями - зручні «withers» для незмінних об'єктів, зокрема з readonly-властивостями:

public function withAmount(int $amount): static
{
    return clone($this, ['amount' => $amount]);
}

#[\NoDiscard] - PHP попередить, якщо результат функції проігноровано. Захищає від помилок на кшталт виклику методу незмінного об'єкта без присвоєння результату.

URI extension - вбудований розбір і нормалізація URL за RFC 3986 і стандартом WHATWG (Uri\Rfc3986\Uri, Uri\WhatWg\Url) замість неточного parse_url().

Інше:

  • array_first() і array_last() - перший і останній елемент без маніпуляцій з внутрішнім вказівником масиву.
  • Замикання й first-class callables у константних виразах (наприклад, у значеннях атрибутів і параметрів за замовчуванням).
  • Стек-трейси для фатальних помилок.
  • Постійні cURL share handles - повторне використання з'єднань і DNS-кешу між запитами.

Як оновлюватися: спершу прогнати тести й статичний аналіз на новій версії в CI, переглянути список застарілого в посібнику з міграції, і лише потім оновлювати прод.

Докладніше в документації: Реліз PHP 8.5

Перевір себе

20 випадкових питань за спробу, після завершення - розбір кожної помилки

Схожі питання