Intruduttu a prima versione beta di u novu ramu di a lingua di prugrammazione PHP 8 A liberazione hè prevista per u 26 di nuvembre. À u listessu tempu, e versioni currettivi di PHP 7.4.9, 7.3.21 è
7.2.33, chì eliminò errori accumulati è vulnerabili.
sustegnu argumenti di funzioni chjamati, chì permettenu di passà valori à a funzione in relazione à i nomi, i.e. Pudete passà argumenti in ogni ordine è definisce l'argumenti opzionali. Per esempiu, "array_fill (start_index: 0, num: 100, value: 50)".
Quandu chjamate i metudi permessu utilizendu l'operatore "?", chì permette di inizià una chjama solu se u metudu hè presente, chì evita cuntrolli innecessarii per rinvià u valore "null". Per esempiu, "$dateAsString = $booking->getStartDate()?->asDateTimeString()";
sustegnu tipi di unioni, chì definisce cullezzione di dui o più tipi (per esempiu, "funzione publica foo(Foo|Bar $input): int|float;").
sustegnu attributi (annotazioni) chì permettenu di ligà i metadati (cum'è l'infurmazioni di tipu) à e classi senza aduprà a sintassi Docblock.
Supportu d'espressione scintilla, chì, à u cuntrariu di u cambiamentu, pò rinvià i valori, sustene e cundizioni di cumminzioni, utilizate paraguni stretti di tipu, è ùn anu micca bisognu di una specificazione "break".
WeakMap per creà oggetti chì ponu esse sacrificati durante a cullizzioni di basura (per esempiu, per almacenà cache innecessarii).
uppurtunità usendu l'espressione "::class" per l'uggetti (analogicu à chjamà get_class()).
uppurtunità definizioni in u bloccu di catch di eccezzioni chì ùn sò micca ligati à variàbili.
uppurtunità lassannu una virgola dopu à l'ultimu elementu in a lista di i paràmetri di funzione.
Nova interfaccia Stringable per identificà ogni tipu di stringa o dati chì ponu esse cunvertiti in una stringa (per quale u metudu __toString() hè dispunibule).
Nova funzione str_contains(), un analogu simplificatu di strpos per determinà l'occurrence di una substringa, è ancu e funzioni str_starts_with () è str_ends_with () per verificà e partite à l'iniziu è a fine di una stringa.
Funzione aghjuntu fdiv(), chì rializeghja una operazione di divisione senza scaccià un errore quandu si divide per zero.
Cambiatu una logica di stringa. Per esempiu, l'espressione 'echo "sum:" . $a + $b' era prima interpretatu cum'è "echo ("sum: " . $a) + $b', è in PHP 8 serà trattatu cum'è "echo "sum: " . ($a + $b)'.
Strettu cuntrollà l'operazioni aritmetiche è di bit, per esempiu, l'espressioni "[] % [42]" è "$object + 4" seranu un errore.
Implementatu un algoritmu di classificazione stabile in quale l'ordine di i valori identichi hè cunservatu in diverse corse.