Dichiarazioni di output

Nei linguaggi di programmazione, output sta a significare il risultato di una elaborazione di dati. Quando il browser incontra una pagina con codice php lo invia al server per l’elaborazione. Una volta processato, l’output viene restituito al browser, attraverso alcune funzioni proprie di PHP.

Il linguaggio offre due dichiarazioni classiche di output, echo e print.

Al di la di alcune differenze marginali che analizzeremo in questo capitolo, i due comandi servono al medesimo scopo.

Una voce di output può essere un numero, una stringa o una variabile. Le stringe devono essere racchiuse tra virgolette.

//risultato Ciao
echo "Ciao";
//risultato 100
echo 100;
//Non valida, genera un messaggio di errore
echo Ciao;
//risultato CiaoMamma
echo "Ciao","Mamma";
//risultato Ciao Mamma
echo "Ciao"," Mamma";
//risultato Ciao Mamma
echo "Ciao Mamma";

PHP invia la stringa di output al server Web, il quale la restituisce senza modificarla al browser. Quest’ultimo interpreta la stringa come codice HTML e la visualizza di conseguenza. Se la stringa contiene tags HTML, il browser l’interpreta quando visualizza la pagina web.

Abbiamo detto che la voce di output può anche contenere una variabile. Quando si memorizza una stringa di caratteri in una variabile, si specificano l’inizio e la fine della stringa con virgolette.

Quando è necessario utilizzarle all’interno della stringa si precedono da una barra rovesciata (), operazione nota come escape, di modo che PHP gestisca le virgolette come parte integrante della stringa e non come il delimitatore di chiusura.

$string = "<img src="logo.gif" alt="descrizione immagine" />";
echo $string;

Un altro sistema per includere virgolette come parte integrante della stringa consiste nell’utilizzare apici sia singoli che doppi, gestiti in modi diversi.

I delimitatori che racchiudono l’intera stringa determinano il trattamento della dichiarazione, anche se sono presenti altri insiemi di virgolette. In questo esempio il valore della variabile sarà processato dal server in maniera corretta :

$string = '<img src="/web/20090307231430im_/https://www.makingweb.it/logo.png" alt="descrizione immagine" />';
echo $string;

È possibile unire due stringhe o una stringa con una variabile attraverso un’operazione definita concatenazione, attraverso un punto (.)

$nome = "luca";
$nickname = "supercapocc";
$stringa ="Il mio nome è ".$nome;
//risultato Il mio nome è luca e in rete sono conosciuto come supercapocc
echo $stringa." e in rete sono conosciuto come ".$nickname;

Torniamo adesso sulla dichiarazione print. Quali sono queste differenze rispetto a echo?

Print si comporta come una funzione, possiamo ad esempio memorizzarlo all’interno di una variabile che avrà come valore 1, di modo che sia possibile renderla parte integrante di funzioni più complesse, cosa che non è possibile utilizzando echo.

//risultato Ciao a tutti
$saluti = print "Ciao a tutti";
//Genera errore
$saluti_2 = echo "Ciao a tutti";

È possibile formattare una stringa per l’output, includendo il valore di una variabile, utilizzando la funzione printf.

La sintassi per il suo utilizzo è la seguente:

$nome = 'Luca';
printf("Il mio nome è %s", $nome);

All’interno delle parentesi notiamo l’istruzione di formato, %s, che rappresenta il segnaposto dove PHP collocherà il primo parametro passato nella funzione, in questo caso la variabile $nome.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *