Get Adobe Flash player

PHP

Il Linguaggio PHP

Ci sono tantissimi motivi per scrivere programmi per computer in PHP. Forse si desidera imparare PHP perché è necessario realizzare un piccolo sito Web contenente alcuni elementi interattivi, oppure PHP viene utilizzato nel proprio luogo di lavoro ed è necessario aggiornarsi.

Il presente fornisce il contesto in cui si inserisce PHP nel puzzle della realizzazione di siti Web: ciò che può fare e perché è tanto valido per ciò che fa.
Si darà anche una prima occhiata al linguaggio PHP e lo si vedrà in azione.

Il ruolo di PHP nel mondo del Web

PHP è un linguaggio di programmazione utilizzato prevalentemente per la realizzazione di siti Web. Invece di essere eseguito su un computer desktop per l’utilizzo da parte di una sola persona, in genere un programma PHP viene eseguito su un server Web e ad esso accedono tantissime persone che utilizzano browser Web sui loro computer. Il presente paragrafo spiega come si inserisce PHP nell’interazione tra un browser Web e un server Web.

Quando ci si siede davanti al computer e si visualizza una pagina Web utilizzando un browser come Internet Explorer o Mozilla, si genera una onversazione su Internet tra il proprio computer e un altro computer. Tale conversazione e il modo in cui viene visualizzata una pagina Web sullo schermo.

Di seguito è spiegato ciò che avviene nei passi numerati del diagramma:
1. Si scrive www.example.com/catalog.html nella barra dell’indirizzo di Internet Explorer. 
2. Attraverso Internet, Internet Explorer invia un messaggio al computer chiamato www.example.com, chiedendo la pagina /catalog.html.
3. Apache, un programma in esecuzione sul computer www.example.com, riceve il messaggio e legge dall’hard disc il file catalog.html. 
4. Come risposta alla richiesta di Internet Explorer, attraverso Internet Apache invia il contenuto del file al computer richiedente. 
5. Internet Explorer visualizza la pagina sullo schermo, seguendo le istruzioni dei tag HTML nella pagina.

Ogni qualvolta un browser chiede http://www.example.com/catalog.html, il server Web restituisce il contenuto dello stesso file catalog.html. La risposta del server Web cambia solo quando viene modificato il file sul server. Quando è coinvolto PHP, tuttavia, il server effettua più lavoro per la sua parte di conversazione. La Figura 1.2 mostra ciò che accade quando un browser Web chiede una pagina generata da PHP. Di seguito è spiegato ciò che avviene nei passaggi numerati della conversazione con PHP:

1. Si scrive www.example.com/catalog/yak.php nella barra dell’indirizzo di Internet Explorer. 
2. Attraverso Internet, Internet Explorer invia un messaggio al computer chiamato www.example.com chiedendo la pagina /catalog/yak.php.
3. Apache, un programma in esecuzione sul computer www.example.com, riceve il messaggio e chiede all’interprete PHP, un altro programma in esecuzione sul computer www.example.com: “Che aspetto ha /catalog/yak.php?”
4. L’interprete PHP legge dall’hard disc il file /usr/local/www/catalog/yak. php. 
5. L’interprete PHP esegue i comandi di yak.php, spesso scambiando dati con un programma di database quale MySQL. 
6. L’interprete PHP prende l’output del programma yak.php e lo restituisce ad Apache come risposta a “Che aspetto ha /catalog/yak.php?”
7. Apache invia al computer dell’utente, attraverso Internet, il contenuto della pagina ricevuto dall’interprete PHP, in risposta alla richiesta di Internet Explorer.
8. Internet Explorer visualizza la pagina sullo schermo, seguendo le istruzioni dei tag HTML nella pagina.

“PHP” è un linguaggio di programmazione. Qualcosa nel server Web legge i programmi PHP, che sono istruzioni scritte con questo linguaggio di programmazione, e capisce cosa fare. “L’interprete PHP” segue le istruzioni. Spesso i programmatori dicono “PHP” per intendere il linguaggio di programmazione o l’interprete. Nel presente volume, quando parla di “PHP” l’autore intende il linguaggio di programmazione; quando parla di “interprete PHP” intende ciò esegue i comandi nei programmi PHP e genera le pagine Web.

PHP (il linguaggio di programmazione) sta all’italiano (il linguaggio umano) come l’interprete PHP sta a una persona che parla italiano. La lingua italiana definisce diverse parole e combinazioni che, se lette o ascoltate da una persona che parla italiano, si traducono in diversi significati che fanno in modo che la persona compia azioni sentirsi felice, andare in un negozio a comprare del latte o indossare un maglione. I programmi scritti in PHP (il linguaggio di programmazione) fanno in modo che l’interprete PHP compia azioni come parlare con un database, generare una pagina Web personalizzata o visualizzare un’immagine. 
Il presente volume si occupa dei dettagli della scrittura di tali programmi, vale a dire ciò che avviene nel passaggio 5 della Figura 1.2 (l’Appendice A contiene invece dettagli sulla configurazione e l’installazione dell’interprete PHP sul server Web). 
PHP è chiamato linguaggio lato server perché, come mostra la Figura 1.2, viene eseguito su un server Web. I linguaggi e le tecnologie come JavaScript e Flash, al contrario, sono chiamati lato client perché sono eseguiti su un client Web (come un PC desktop). Le istruzioni in un programma PHP fanno in modo che l’interprete PHP su un server Web emetta una pagina Web; le istruzioni in un programma JavaScript fanno in modo che Internet Explorer, mentre è in esecuzione sul PC desktop, compia azioni come aprire una nuova finestra.
Quando il server Web ha inviato al client la pagina Web generata (passaggio 7 nella Figura 1.2), PHP esce di scena. Se il contenuto della pagina contiene codice JavaScript, tale JavaScript viene eseguito sul client ma è completamente scollegato dal programma PHP che ha generato la pagina. 
Un normale pagina HTML è come la lettera “siamo spiacenti del fatto che abbia trovato uno scarafaggio nella minestra” che si potrebbe ricevere dopo avere inviato un reclamo a una compagnia aerea infestata dagli scarafaggi. 
Quando la lettera arriva negli uffici della compagnia aerea, l’indaffarata segretaria del servizio clienti estrae la “lettera di risposta per gli scarafaggi” dall’archivio, ne fa una copia e la invia al cliente che ha reclamato. Tutte le richieste di quel genere ottengono esattamente la stessa risposta.
Al contrario, una pagina dinamica generata da PHP è come una lettera scritta a un amico. Nella pagina si può inserire ciò che si desidera: scarabocchi, disegni, ideogrammi e tenere storie su quanto sia adorabile il proprio bambino quando lancia pappa per tutta la cucina. Il contenuto della lettera è adattato alla persona a cui viene inviata. Quando si inserisce la lettera nella casella della posta, tuttavia, non è più possibile modifi carla: viaggia nel mondo e viene letta dall’amico. Non c’è modo di modifi care la lettera mentre l’amico la sta leggendo. 
Ora, si immagini di inviare una lettera a un amico amante del bricolage.
Insieme agli scarabocchi e alle storie si inseriscono istruzioni come “ritaglia la figura della rana nella parte superiore della pagina e incollala sul coniglietto nella parte inferiore della pagina” e “leggi l’ultimo paragrafo della pagina prima di tutti gli altri”. Mentre l’amico legge la lettera, esegue anche le azioni contenute nelle istruzioni della lettera. Tali azioni sono come JavaScript in una pagina Web: vengono impostate quando viene scritta la lettera e non cambiano in un secondo momento. Ma quando il lettore segue le istruzioni, la lettera stessa può cambiare. Analogamente, un browser Web obbedisce ai comandi JavaScript in una pagina e visualizza finestre, cambia le opzioni di menu dei moduli o aggiorna la pagina verso un nuovo URL.