PHP è un linguaggio la cui funzione fondamentale è quella di produrre codice HTML, che è quello dal quale sono formate le pagine Web. Ma, poichè PHP è un linguaggio di programmazione, abbiamo la possibilità di analizzare diverse situazioni (l'input degli utenti, i dati contenuti in un database) e di decidere, di conseguenza, di produrre codice HTML condizionato ai risultati dell'elaborazione. Questo è, in parole povere, il Web dinamico. Come abbiamo visto precedentemente, quando il server riceve una richiesta per una pagina PHP, la fa analizzare dall'interprete del linguaggio, il quale restituisce un file contenente solo il codice che deve essere inviato al browser (in linea di massima HTML, ma può esserci anche codice JavaScript, fogli di stile CSS o qualunque altro contenuto fruibile da un browser, come immagini e documenti Pdf).
Detto questo, come avviene la produzione di codice HTML? La prima cosa da sapere è come fa l'interprete PHP a discernere quale porzione di un file contiene codice da elaborare e quale codice da restituire solamente all'utente. Questa fase di riconoscimento è molto importante, dato che permette a PHP di essere incluso all'interno di normale codice HTML in modo da renderne dinamica la creazione. Il codice PHP deve essere compreso fra appositi tag di apertura e di chiusura, che sono i seguenti:
<?php //tag di apertura ?> //tag di chiusura
Tutto ciò che è contenuto fra questi tag deve corrispondere alle regole sintattiche del PHP, ed è codice che sarà eseguito dall'interprete e non sarà inviato direttamente al browser al browser. Per generare l'output da inviare al browser attraverso codice PHP viene normalmente utilizzato il costrutto echo. Vediamo un semplice esempio, composto da codice HTML e codice PHP (il codice PHP è evidenziato in rosso):
<html>
<head>
<title>
<?php
echo "Pagina di prova PHP";
?>
</title>
</head>
<body>
<?php
echo "Buona giornata!";
?>
</body>
</html>
Questo banalissimo codice produrrà un file HTML il cui contenuto sarà semplicemente:
<html>
<head>
<title>
Pagina di prova PHP
</title>
</head>
<body>
Buona giornata!
</body>
</html>
Quindi l'utente vedrà sul suo browser la riga "Buona giornata!". È opportuno ricordare che il dato da inviare al browser che segue il comando echo può essere racchiuso tra parentesi e che al comando possono essere date in input più stringhe (questo è il nome che viene dato ad una ripetizione di qualunque carattere compreso tra due apici singoli (' ') o doppi (" ")), separate da virgole, così:
echo "Buongiorno a tutti!", "<br />\n", "È una bellissima giornata";
Se si decide di utilizzare il separatore virgola, non possono essere utilizzate le parentesi. Nel prosieguo del corso useremo spesso il verbo 'stampare' riferito alle azioni prodotte dal comando echo o da istruzioni con funzionalità analoghe (quali print, sprintf e altro): ricordiamoci però che si tratta di una convenzione, perchè in questo caso la 'stampa' non avviene su carta, ma sull'input che verrà inviato al browser!
Facciamo caso ad un dettaglio: nelle istruzioni in cui stampavamo "Buongiorno a tutti", abbiamo inserito, dopo il <br />, il simbolo \n. Questo simbolo ha una funzione abbastanza importante nella programmazione e nello scripting che serve più che altro per dare leggibilità al codice HTML che stiamo producendo. Infatti PHP, quando trova questa combinazione di caratteri fra virgolette, li trasforma in un carattere di ritorno a capo: questo ci permette di controllare l'impaginazione del nostro codice HTML. Bisogna però stare molto attenti a non confondere il codice HTML con il layout della pagina che l'utente visualizzerà sul browser: infatti, sul browser è solo il tag <br /> che forza il testo ad andare a capo.
Quando questo tag non c'è, il browser allinea tutto il testo proseguendo sulla stessa linea (almeno fino a quando gli altri elementi della pagina e le dimensioni della finestra non gli "consigliano" di fare diversamente), anche se il codice HTML ha un ritorno a capo.
Vediamo di chiarire questo concetto con un paio di esempi:
<?php echo "prima riga\n"; echo "seconda riga<br />"; echo "terza riga"; ?>
Questo codice php produrrà il seguente codice HTML:
prima riga seconda riga<br />terza riga
mentre l'utente, sul browser, leggerà:
prima riga seconda riga terza riga
Questo perchè il codice PHP, mettendo il codice 'newline' dopo il testo 'prima riga', fa sì che il codice HTML venga formato con un ritorno a capo dopo tale testo. Il file ricevuto dal browser quindi andrà a capo proprio lì. Il browser, però, non trovando un tag che gli indichi di andare a capo, affiancherà la frase 'prima riga' alla frase 'seconda riga', limitandosi a mettere uno spazio fra le due. Successivamente accade l'esatto contrario: PHP produce un codice HTML nel quale il testo 'seconda riga' è seguito dal tag <br />, ma non dal codice 'newline'. Per questo, nel file HTML, 'seconda riga<br />' e 'terza riga' vengono attaccati. Il browser, però, quando trova il tag <br /> porta il testo a capo.
Avrete forse notato che in fondo ad ogni istruzione PHP abbiamo messo un punto e virgola; infatti la sintassi del PHP prevede che il punto e virgola debba obbligatoriamente chiudere ogni istruzione. Ricordiamoci quindi di metterlo sempre, con qualche eccezione che vedremo più avanti. Da quanto abbiamo detto finora emerge una realtà molto importante: chi vuole avvicinarsi al PHP deve già avere una conoscenza approfondita di HTML e di tutto quanto può far parte di una pagina web (si consiglia per questo di leggere le nostre Guide all'HTML, al JavaScript, e ai CSS).
Questo perchè lo scopo principale di PHP è proprio la produzione di questi codici (anche se va ricordato che può essere utilizzato per scopi differenti, come linguaggio di shell o per la creazione di applicazioni desktop grazie all'estensione PHP-GTK).
Sessioni PHP: cosa sono, come si usanoDalla configurazione di PHP, alla gestione delle sessioni in un... |
Continuous Integration: automatizziamo i client con PhingContinuous Integration: automatizziamo i client con Phing. Esempi... |
Archiviazione delle applicazioni PHP con PharCome incorporare intere applicazioni PHP all'interno di un singolo... |
I traits in PHP 5.4Cosa sono, a cosa servono e come si unsano i traits, la novità per... |
PHP 5.4: il web server integratoImpara ad usare il web server integrato nella versione 5.4 di PHP:... |
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Guida PHP con Windows e IISInstallare ambienti per lo sviluppo e la produzione di applicazioni... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |