Novinky v PHP 8.5: Přehled toho nejdůležitějšího
PHP 8.5 je venku a přináší řadu vylepšení, která vývojářům zpříjemní každodenní práci. Největší novinkou je pipe operátor, ale nechybí ani nové užitečné funkce, lepší práce s objekty nebo zlepšené nástroje pro debugging. Podívejme se na nejzajímavější novinky podrobněji.
Pipe operátor (|>)
Asi nejdiskutovanější změnou je zavedení pipe operátoru. Ten umožňuje řetězit funkce přehledněji bez nutnosti vnořování.
$result = $input
|> trim(...)
|> strtolower(...)
|> someCustomFunction(...);To výrazně zvyšuje čitelnost, zejména u složitějších datových transformací známých například z funkcionálních stylů programování.
Nové funkce array_first() a array_last()
Další praktickou novinkou jsou funkce pro pohodlné získání prvního a posledního prvku pole:
$first = array_first($items);
$last = array_last($items);
Odpadá tak potřeba používat reset(), end() nebo složitější konstrukce.
Vylepšená práce s URL: vestavěné URI rozšíření
PHP nově obsahuje plnohodnotné URI rozšíření podle standardů RFC a WHATWG. Umožňuje snadnou analýzu, normalizaci i manipulaci s URL bez nutnosti instalovat dodatečné knihovny.
„Clone with“ syntaxe
Velkou výhodou při práci s immutable objekty je nová syntaxe clone with, která umožňuje objekt naklonovat a rovnou změnit vybrané vlastnosti:
$newUser = clone $user with { email: 'new@example.com' };
Tento přístup je čistší a intuitivnější než dosavadní způsoby.
Atribut #[\NoDiscard]
Pokud má být návratová hodnota funkce zásadní, lze ji nově označit atributem:
#[\NoDiscard]
function calculatePrice(...) { ... }
Pokud vývojář výsledek nepoužije, PHP upozorní — skvělé pro prevenci tichých chyb.
Další vylepšení
- curl_multi_get_handles() — jednodušší práce s paralelními HTTP requesty.
- Lepší internacionalizace — nové funkce pro RTL jazyky a formátování seznamů.
- Vylepšené CLI — příkaz php --ini=diff zobrazí odlišnosti v konfiguraci.
- Lepší error reporting — detailnější stack traces i u fatálních chyb.
Závěr
PHP 8.5 není revoluce, ale praktický upgrade. Přináší chytřejší syntaxi, pohodlnější funkce a nástroje, které zvyšují čitelnost kódu i kvalitu ladění. Pokud vyvíjíte moderní projekty nebo používáte frameworky jako Laravel, je aktualizace krokem správným směrem.