Echo PHP o PHP Echo, è uno dei costrutti basilari di PHP. PHP Echo infatti permette di mostrare a video un valore sotto forma di stringa. E’ stato introdotto dalla versione 4 di PHP ed è tuttora presente nella versione 7.
“Echo” non è una funzione vera e propria, Echo PHP rappresenta un costrutto del linguaggio, non è dunque necessario utilizzare parentesi per utilizzarlo o passare argomenti.
echo 'Hello world';
Utilizzare PHP Echo
Echo short syntax
Echo PHP ha anche una sintassi alternativa che può essere usata fuori dal contesto PHP.
<?= 'Hello world'; ?>
Differenza tra “Echo e Print”
Essenzialmente, Echo e Print fanno la stessa cosa, entrambi servono per mostrare dati sullo schermo. Le differenze sono poche:
- Echo non restituisce alcun valore, mentre Print restituisce 1 come risposta, perciò può essere usato nelle espressioni.
- Echo può avere più parametri, mentre Print ne accetta solo uno.
- Echo, volendo essere pignoli, è leggermente più veloce di Print nell’esecuzione.
Hands on
Apriamo adesso il terminale e digitiamo questo comando:
php -a
Questo comando aprirà sul vostro terminale una shell interattiva dove potrete scrivere direttamente comandi PHP e ottenere il risultato immediatamente.
Facciamo una prova con Echo:
Nella shell ho digitato Echo “Hello world!”; ho premuto invio e il risultato mi è stato mostrato proprio sotto.
Come abbiamo detto, Echo accetta uno o più argomenti, mettiamolo alla prova:
Fantastico, da notare come \n sia stato interpretato come istruzione di nuova linea. Se avessimo usato i singoli apici, questo non sarebbe successo.
Proviamo adesso a fare la stessa cosa con Print:
Come ci aspettavamo, PHP ci ha restituito un errore, perché print non accetta più di un argomento, quindi l’unico modo per passare tre valori a print è usare la concatenazione tra le tre stringhe.
Facciamo un esempio:
$newLine = "\n"; print "Hello" . $newLine . "world!";
Sappiamo che avremmo potuto mettere la variabile, o il suo valore, direttamente all’interno di un’unica stringa racchiusa da double quotes, ma è a scopo esemplificativo per mostrare come lavorare con tre elementi separati.
Il vantaggio principale che porta la peculiarità di echo nell’accettare più argomenti è legato alla precedenza degli operatori in PHP. Infatti in un caso come questo non è necessario usare parentesi:
echo "Sum: ", 1 + 2; echo "Hello ", isset($name) ? $name : "John Doe", "!";
Se avessimo usato la concatenazione, saremmo stati obbligati a utilizzare le parentesi come mostrato nell’esempio successivo:
echo 'Sum: ' . (1 + 2); echo 'Hello ' . (isset($name) ? $name : 'John Doe') . '!';
Per approfondimenti vi consigliamo di dare un’occhiata alla pagina della documentazione ufficiale o alla descrizione di Echo su w3.org, oppure di partecipare a uno dei nostri corsi di PHP per principianti.