PHP 8.4 — це не «косметичне оновлення», а набір речей, які реально впливають на щоденний код: нові можливості ООП, DOM-API з HTML5, корисні array_* та дрібні поліпшення синтаксису. Найпомітніше — property hooks: тепер можна перехоплювати читання/запис властивості без окремих getter/setter і робити обчислювані поля.

class Locale {
public string $lang;
public string $country {
set (string $v) {
$this->country = strtoupper($v);
}
}
public string $code {
get => "{$this->lang}_{$this->country}";
set (string $v) {
[$this->lang, $this->country] = explode('_',$v,2);
}
}
}
$l = new Locale();
$l->code = 'uk_ua'; // set обробить і нормалізує echo $l->code; // uk_UA

Ще одна приємність — асиметрична видимість: можна відкрити властивість на читання, але заборонити запис зовні (public private(set)), тобто менше «бойлерплейта».

class Version { 
public private(set) string $v = '8.4';
}
$ver = new Version();
echo $ver->v; // читати можна // $ver->v = '9.0'; // помилка: запис зовні недоступний

Масиви отримали array_find / array_find_key / array_any / array_all — кінець самописним циклам «знайти перший елемент».

$animal = array_find(['dog','cat','cow'], fn($x)=>str_starts_with($x,'c')); // 'cat'

DOM тепер має сучасний, сумісний зі стандартами інтерфейс у просторі імен Dom\* (HTML5-парсинг, querySelector, classList), що значно приємніше за старий DOMDocument.

$doc = Dom\HTMLDocument::createFromString('Hello');
$node = $doc->querySelector('article');
var_dump($node->classList->contains('featured')); // true

Дрібниці, які економлять нерви: ланцюжити виклики можна прямо після new без дужок, з’явився RoundingMode для round(), об’єктний BCMath\Number, mb_trim/mb_ucfirst, мікросекунди у DateTime, та навіть підкласи PDO на кшталт Pdo\Pgsql.

$result = round(2.5, 0, RoundingMode::AwayFromZero); // 3 var_dump(new PhpVersion()->getVersion()); // без (new ... )

У беквардах важливо знати: IMAP, OCI8, PDO_OCI, pspell винесені у PECL; знеохочено «неявно nullable» типи параметрів; змінено поведінку exit() у деяких сценаріях — заглянь у міграційний гайд перед апдейтом.

Головне: 8.4 робить код чистішим і передбачуванішим. Якщо працюєш з контентом (DOM), числами (BCMath/rounding) чи великими масивами — вигода відчутна. Хочеш спробувати 8.4 на практиці? Розгорни його на нашому VPS або онови проєкт на Shared-хостингу; для бекапів підключи S3-сховище.