Un linguaggio per il web
PHP (PHP: Hypertext Preprocessor) nasce nel 1995 come insieme di script Perl per gestire pagine personali. In cinque anni si è trasformato nel linguaggio server-side più diffuso per la generazione di pagine web dinamiche. Con il rilascio della versione 4 nel maggio 2000, PHP compie un salto architetturale significativo.
Il cuore di PHP 4 è il nuovo Zend Engine, il motore di esecuzione riscritto da zero da Zeev Suraski e Andi Gutmans. Rispetto al parser della versione 3, lo Zend Engine separa nettamente la fase di parsing dalla fase di esecuzione, permettendo prestazioni superiori e aprendo la strada a ottimizzazioni future. Il risultato è un linguaggio più veloce e in grado di gestire applicazioni di complessità crescente.
Funzionalità principali
PHP 4 introduce diverse funzionalità rilevanti per lo sviluppo web:
- Sessioni native: gestione dello stato utente tra richieste HTTP successive, senza dipendere da librerie esterne
- Output buffering: controllo sulla sequenza di invio dei dati al client, utile per la manipolazione degli header HTTP e la compressione dell’output
- Supporto HTTP migliorato: gestione nativa di cookie, upload di file e autenticazione HTTP
- Estensioni database: connettori per MySQL, PostgreSQL, Oracle, ODBC e altri DBMS
Il ciclo richiesta-risposta
Il modello di esecuzione di PHP è intrinsecamente legato al protocollo HTTP. Ogni richiesta del client avvia un’istanza dell’interprete: lo script viene caricato, compilato in opcode intermedio, eseguito, e il risultato viene inviato come risposta. Al termine della richiesta, la memoria viene liberata. Questo modello shared-nothing presenta un vantaggio strutturale: ogni richiesta è indipendente dalle altre, il che semplifica la scalabilità orizzontale. Per gestire più traffico è sufficiente aggiungere server.
Lo stack LAMP
PHP occupa il livello applicativo dello stack LAMP: Linux come sistema operativo, Apache come web server, MySQL come database relazionale, PHP come linguaggio di scripting. Questa combinazione è interamente Open Source, a costo di licenza zero, e rappresenta l’infrastruttura su cui gira la maggioranza dei siti web dinamici. L’integrazione tra i quattro componenti è diretta: il modulo mod_php di Apache esegue gli script PHP all’interno del processo del web server, eliminando l’overhead del CGI tradizionale.
Lo stack LAMP ha abbassato la barriera d’ingresso per lo sviluppo web, rendendo possibile la costruzione di applicazioni dinamiche con strumenti accessibili e ben documentati.
