PHP7: tempi di accesso e di caricamento ridotti delle pagine

Se create un sito web, volete anche che sia veloce e quindi che i tempi di caricamento di una pagina si mantengano il più ridotto possibile. Infatti se una pagina si carica velocemente, avrà un effetto positivo sul comportamento degli utenti. Quindi ottimizzando la velocità si ottiene una minore frequenza di rimbalzo e il visitatore rimane più a lungo sulla pagina, cosa che i motori di ricerca come Google ricompensano con un miglior posizionamento.

Tra le innumerevoli possibilità per rendere più veloce un sito web rientra anche l’ottimizzazione del linguaggio di scripting in uso. Specialmente gli sviluppatori di siti web dinamici, che usano il codice PHP, dal rilascio del PHP7 possono usufruire di una migliore performance, migliorata ulteriormente con il rilascio delle versioni successive 7.1 e 7.2.

N.B.

L’uso di versioni PHP datate, tra cui rientra anche la versione PHP 7.0 a partire da dicembre 2018, rappresenta un potenziale rischio per la sicurezza. La community PHP supporta solo le versioni attuali come il PHP 7.1, 7.2 o in futuro il PHP 7.3.

Il fatto che poco dopo la scadenza del supporto per il PHP 7.0 anche il supporto ufficiale per l’amato PHP 5.6 terminerà a dicembre 2018 dimostra l’avanzata delle nuove versioni del linguaggio di scripting. A due anni dal primo rilascio il PHP7 è definitivamente entrato a far parte del web.

Cos’è il codice PHP?

Il PHP è un linguaggio di scripting usato per la creazione di siti web dinamici e diffuso con licenza PHP, grazie alla quale è possibile riutilizzare gratuitamente il codice sorgente o modificarlo. La funzione principale del PHP è quella di leggere i dati dei moduli e codificarli in variabili PHP, ad esempio inserendole in un database o inviandole per e-mail. I vantaggi del PHP sono, tra gli altri, l’integrazione del protocollo di rete e l’ampio supporto di modelli di database diversi. Questo linguaggio di scripting viene utilizzato da circa l’82% di tutti i siti web ed è perciò preinstallato dalla maggior parte dei provider.

Tutti i codici PHP vengono elaborati lato server, cioè gli script PHP vengono eseguiti direttamente sul server, al contrario degli altri codici come JavaScript che sono caricati lato client. Se un utente effettua una richiesta al server, lo script PHP corrispondente viene inviato all’interprete PHP sul server, che lo elabora e lo riproduce sul browser. Si tratta soprattutto di documenti HTML ma anche di altri tipi di file. Inoltre il codice PHP permette anche di generare file JPG o PDF e di inviarli al browser.

Quali novità presenta il codice PHP7?

Dato che lo sviluppo del PHP6 è stato sospeso, il codice PHP7 è in realtà il successore del PHP5 ed è diventato la sesta versione ufficiale del PHP. Il linguaggio di scripting in sé non ha subito grandi modifiche e per questo il PHP7 è retrocompatibile: la maggior parte delle applicazioni che funzionavano finora con il PHP5.6 è quindi utilizzabile anche con la nuova versione. È problematica solo la compatibilità con alcune estensioni più vecchie che non vengono più aggiornate, come ad esempio l’estensione per l’accesso dei database MySQL, non più supportata dalla versione 7. Si consiglia perciò di passare alla versione aggiornata, MySQLi, o al plug-in simile PDO (PHP Data Objects).

La novità più importante del codice PHP7 riguarda il notevole miglioramento della performance, che il team degli sviluppatori ha raggiunto grazie a diverse ottimizzazioni del nucleo PHP. Oltre a una maggiore velocità (il PHP7 è il doppio più veloce rispetto ai suoi predecessori), la nuova versione ha il vantaggio di utilizzare meno memoria. Ma non solo i comandi esecutivi principali (bytecode) sono stati ristrutturati, anche componenti come il parser, il lexer e il generatore di bytecode hanno subito dei cambiamenti. Così con il PHP7 è stata realizzata una sintassi ad albero astratta che costituisce la base per la generazione dei comandi bytecode, invece di creare il codice direttamente dal parser. Ciò semplifica di molto la sintassi PHP.

Un’altra nuova funzione è la possibilità di stabilire i tipi di dati scalari, cioè quelli in cui viene salvato solo un valore, e i tipi dei dati di ritorno del codice di programmazione. Per questo il PHP è stato ampliato con i tipi integer, booleani, float e string. Le novità più importanti del codice PHP7 in sintesi sono:

Le novità più importanti e i vantaggi del PHP7

✔ Migliore performance, quasi il doppio più veloce di quella del PHP5.6

✔ Utilizzo di poca memoria

✔ Implementazione di una sintassi ad albero astratta per la generazione del bytecode

✔ Conseguente supporto di sistemi a 64 bit

✔ Migliore gestione degli errori che provocano sempre più raramente dei crash di sistema

✔ Generatore casuale crittografato più sicuro

✔ Eliminazione di estensioni datate e non più supportate e dellei interfacce server

✔ Dichiarazione di tipi di dati scalari e di tipi di dati di ritorno

Come il codice PHP7 migliora la performance di WordPress e di altri CMS

L’aspetto principale per il miglioramento della performance del PHP7 è stato realizzato tramite l’integrazione della versione derivata PHPNG (PHP Next Generation) nella versione principale del PHP. Il progetto derivato si contraddistingue soprattutto per l’aggiunta di altri fattori al nucleo comprensivi del nuovo interprete Zend Engine 3.0. Ancora prima del rilascio del codice PHP7, la Zend Technologies ha reso noti i risultati dei benchmark, in cui sono stati illustrati i vantaggi della nuova versione PHP per siti e-commerce, CMS e framework.

Consiglio

1&1 IONOS è l’unico provider che garantisce che le versioni PHP datate continuino a funzionare senza presentare rischi per la sicurezza, anche dopo la fine del supporto della community PHP. Così il cliente può decidere autonomamente grazie al PHP Extended Support quando passare o meno alla nuova versione.

Magento, software per la creazione di e-commerce, viene ad esempio eseguito più velocemente, quasi il doppio rispetto al PHP 5.6, con una conseguente riduzione del consumo di memoria di circa il 30%. Inoltre il codice PHP7 permette che la pagina sia visitata fino a tre volte di più nello stesso tempo impiegato dalla versione precedente.

Simili sono anche i risultati dei test condotti sui CMS come Drupal e WordPress: mentre Drupal 8 funziona più velocemente quasi del 72%, i test su WordPress hanno dimostrato che, richiamando una pagina con il codice PHP7, sono solo necessarie circa un quarto delle istruzioni CPU.

Quindi, per quanto riguarda l’aspetto della velocità di caricamento, entrambi i CMS presentano un aumento delle prestazioni di circa il 50%. Anche i framework Laravel e Zend e i sistemi CRM come SugarCRM possono avere con il codice PHP7 quasi il doppio di accessi per secondo.

Se paragonato alla versione precedente, il PHP7 permette di mantenere dei tempi di caricamento e di accesso alle pagine piuttosto bassi. Anche se aumenta il numero di visitatori, non è più necessario un costoso upgrade dell’hardware. Le nuove prestazioni del PHP7 vi consentono di rendere accessibili a un gran numero di visitatori e senza costi aggiuntivi le vostre pagine WordPress, Magento o simili.

Potete leggere i dati completi anche nel benchmark pubblicato dalla Zend Technologies nella rispettiva infografica.