PHP 8.5 spiegato semplice: le novità principali per chi programma (o inizia a farlo)

PHP 8.5, rilasciato lo scorso 20 novembre, introduce novità come l'operatore pipe, il clone with e nuove funzioni per gli array. Ecco una guida semplice a cosa cambia e come aggiornare senza sorprese.

PHP 8.5 spiegato semplice: le novità principali per chi programma (o inizia a farlo)

Chi sviluppa siti e applicazioni web con PHP lo sa bene: ogni nuova versione del linguaggio porta con sé qualche piccola rivoluzione nel modo di scrivere codice. L'ultima release importante, PHP 8.5, è stata pubblicata ufficialmente il 20 novembre 2025 ed è oggi la versione più recente e consigliata per i nuovi progetti. In questo articolo vediamo, con parole semplici e qualche esempio pratico, cosa cambia davvero e perché conviene conoscerlo anche se non si è sviluppatori esperti.

PHP resta uno dei linguaggi più usati al mondo per il web: è alla base di piattaforme come WordPress, Laravel, Symfony e migliaia di siti e applicazioni. Per questo motivo, ogni nuova versione ha un impatto molto ampio, non solo sugli sviluppatori professionisti ma anche su chi gestisce un sito basato su questi strumenti.

Cos'è una "versione major" e perché conviene tenerla d'occhio

Prima di entrare nel dettaglio, una piccola spiegazione per chi è alle prime armi: PHP segue un ciclo di rilascio annuale, con una nuova versione principale (chiamata anche major quando cambia il primo numero, minor quando cambia il secondo) che introduce nuove funzionalità, mentre nei mesi successivi arrivano solo correzioni di bug e di sicurezza. PHP 8.5 è quindi l'evoluzione naturale di PHP 8.4, uscito un anno prima, e riceverà aggiornamenti di sicurezza attivi per i prossimi anni. Chi gestisce un sito dovrebbe pianificare l'aggiornamento con un minimo di attenzione, testando prima il proprio codice in un ambiente di prova.

L'operatore Pipe: scrivere codice più leggibile

La novità più discussa di questa versione è l'introduzione dell'operatore pipe, rappresentato dal simbolo |>. Per chi non ha familiarità con il concetto: un "pipe" permette di collegare più funzioni in sequenza, passando il risultato di una come input alla successiva, in un ordine che si legge da sinistra a destra, un po' come un nastro trasportatore.

Prima di PHP 8.5, per ottenere lo stesso risultato si dovevano annidare le funzioni una dentro l'altra, rendendo il codice via via più difficile da leggere man mano che aumentavano i passaggi. Con il nuovo operatore, invece, la stessa operazione diventa una sequenza ordinata e molto più chiara:

  • Prima: le funzioni si scrivevano una dentro l'altra, dalla più interna alla più esterna, obbligando chi legge il codice a partire dal centro per capire cosa succede per primo.
  • Ora: con |> si scrive un passaggio dopo l'altro, nell'ordine in cui vengono effettivamente eseguiti, rendendo il flusso immediato da seguire anche per chi non ha scritto quel codice.

Questa funzionalità non introduce nulla che non fosse già possibile fare, ma migliora sensibilmente la leggibilità, un aspetto che nella manutenzione di progetti reali fa risparmiare molto tempo.

Clone With: modificare un oggetto copiandolo

Un'altra novità pensata per semplificare la vita a chi programma è "clone with". In PHP, quando si vuole duplicare un oggetto mantenendo l'originale intatto si usa da tempo la parola chiave clone. Fino a oggi, però, se si voleva creare una copia con una o più proprietà diverse rispetto all'originale, era necessario clonare l'oggetto e poi modificarlo con passaggi separati, oppure scrivere metodi appositi.

Con PHP 8.5 è possibile indicare, nello stesso momento in cui si clona un oggetto, quali proprietà devono avere un valore diverso nella copia. È una funzionalità particolarmente utile per chi lavora con oggetti pensati per non cambiare mai dopo la creazione (i cosiddetti oggetti "immutabili"), uno stile di programmazione sempre più diffuso perché rende il codice più prevedibile e meno soggetto a errori.

array_first() e array_last(): meno codice per un'operazione comune

Chi scrive codice PHP si trova spessissimo a dover recuperare il primo o l'ultimo elemento di un array (l'equivalente di una lista di valori). Fino a oggi questa operazione, semplice in teoria, richiedeva funzioni come reset() o end(), con alcune insidie tecniche legate al puntatore interno dell'array che potevano confondere chi era alle prime armi.

PHP 8.5 introduce due nuove funzioni dedicate, array_first() e array_last(), che fanno esattamente quello che il nome suggerisce, restituendo rispettivamente il primo e l'ultimo valore di un array senza effetti collaterali. Una piccola aggiunta, ma di quelle che semplificano il codice di tutti i giorni.

Una nuova estensione per lavorare con gli indirizzi web (URI)

Tra le novità più tecniche c'è l'introduzione di un'estensione nativa per il parsing degli URI, cioè per "scomporre" un indirizzo web nelle sue parti (dominio, percorso, parametri e così via) seguendo gli standard ufficiali del settore. Finora, per fare questa operazione in modo affidabile, gli sviluppatori dovevano spesso affidarsi a librerie esterne. Con PHP 8.5 questa funzionalità è disponibile direttamente nel linguaggio, il che significa codice più semplice da mantenere e meno dipendenze da gestire in un progetto.

Cosa cambia (e cosa conviene controllare prima di aggiornare)

Come in ogni nuova versione, alcune funzionalità più datate vengono segnalate come "deprecate", cioè sconsigliate perché verranno rimosse in futuro. Chi gestisce siti o applicazioni PHP esistenti dovrebbe prestare attenzione in particolare a questi punti:

  • Le forme non standard di conversione di tipo (ad esempio scrivere (boolean) invece di (bool), oppure (integer) invece di (int)) sono ora deprecate: continuano a funzionare, ma generano un avviso e andrebbero aggiornate.
  • L'operatore backtick, usato raramente per eseguire comandi di sistema direttamente dal codice, è deprecato a favore della funzione shell_exec(), più esplicita e sicura.
  • L'opzione da riga di comando --zend-extension è stata rimossa: chi utilizza estensioni particolari in ambienti server dovrà verificare la configurazione prima di aggiornare.

Nessuna di queste modifiche dovrebbe causare problemi bloccanti nella maggior parte dei siti, ma è comunque buona norma testare l'aggiornamento in un ambiente di sviluppo o staging prima di applicarlo a un sito online, specialmente se si utilizzano estensioni o librerie di terze parti non aggiornate da tempo.

Conviene aggiornare subito?

Per chi gestisce un progetto professionale, la risposta più prudente è: sì, ma con metodo. PHP 8.5 è una versione stabile, supportata attivamente e già adottata da molti hosting e framework principali. Prima di aggiornare un sito in produzione conviene però verificare la compatibilità dei plugin (nel caso di WordPress) o delle librerie (nel caso di framework come Laravel o Symfony) utilizzate, oltre a fare un backup completo. Per chi sta invece imparando a programmare oggi, non c'è motivo di partire da una versione precedente: PHP 8.5 è il punto di riferimento più aggiornato su cui costruire le proprie competenze.

In sintesi

PHP 8.5 non stravolge il linguaggio, ma lo rende più comodo da usare nel lavoro quotidiano: codice più leggibile grazie all'operatore pipe, meno righe per operazioni comuni come clonare oggetti o leggere array, e una gestione degli URI finalmente integrata senza librerie esterne. Piccoli passi che, sommati nel tempo, rendono PHP uno strumento sempre più maturo per costruire il web di oggi.

Fonti ufficiali

Annuncio ufficiale di rilascio di PHP 8.5 su php.net

Guida ufficiale alla migrazione a PHP 8.5

PHP 8.5: What's New and Changed - PHP.Watch

Share

What's Your Reaction?

Like Like 0
Cancella like Cancella like 0
Amore Amore 0
Buffo Buffo 0
arrabbiato arrabbiato 0
Sad Sad 0
Wow Wow 0