Struttura del codice
Il codice PHP necessita di pochi accorgimenti per essere strutturalmente valido. Innanzitutto, l’interprete PHP legge ed esegui tutto ciò che segue il tag di apertura che è rappresentato dalla stringa:
<?php
Ovviamente, il codice deve essere sintatticamente valido. La sintassi è la forma con la quale PHP si aspetta che vengano elencate le istruzioni e comprende sia il rispetto della punteggiatura, dei simboli, dei nomi di variabili, dei nomi di funzioni e via dicendo.
<?php
// Codice PHP
Commenti
I commenti di PHP, sebbene non abbiano un ruolo in fase di visualizzazione dell’output, sono molto importanti per rendere più leggibile il codice e spiegare cosa esso fa. È possibile utilizzare tre tipi di commenti: preceduti da hash (#), preceduti da doppio slash (//) oppure commenti su più linee (/* */).
I primi due necessitano di essere posti su una singola linea mentre il terzo può essere esteso su più linee.
<?php
# Questo è un commento preceduto da hash
// Questo è un commento preceduto da doppio slash
/* Questo è un commento presente su più linee
che finisce su
questa linea */
Codice e blocchi di codice
PHP utilizza e ordina i blocchi di codice attraverso le parentesi graffe di apertura ({) e di chiusura (}). Un blocco di codice compreso tra esse, normalmente, fa parte di strutture e costrutti particolari ed è separato dal resto del codice. È importante che qualsiasi blocco di codice aperto venga chiuso, altrimenti PHP genera un errore e l’esecuzione del programma si blocca immediatamente:
<?php
while (true) {
// Questo è un blocco di codice
}
Nell’esempio sottostante, PHP non potrà eseguire la pagina perché manca il segnale di chiusura del blocco del codice.
<?php
while (true) { // Notare la graffa di apertura
// Questo è un altro blocco di codice
Blocchi di codice senza parentesi graffe
Esiste una eccezione alla necessità di utilizzare le parentesi graffe per delimitare dei blocchi di codice: la presenza di una singola linea. Quando è necessario valutare una singola linea, ad esempio a seguito di un if o di altre strutture, è possibile omettere le parentesi. L’esempio di sotto è perfettamente valido.
<?php
$numero = 4;
if ($numero < 5)
echo 'Numero inferiore a 5'; // Output: numero inferiore a 5
// Altro codice
Termine operazione: il punto e virgola
In PHP, il punto e virgola (;) ha un ruolo cruciale: viene utilizzato per terminare ogni istruzione o espressione. È l’equivalente di un segnale di stop per il linguaggio, indicando al motore di esecuzione di PHP che l’istruzione è completa e che può passare alla successiva.
Ogni singola riga di codice PHP che esegue un’azione (ad esempio, assegnare un valore a una variabile, stampare qualcosa a schermo, o eseguire una funzione) deve terminare con un punto e virgola. Senza di esso, PHP non sarebbe in grado di capire dove finisce un’istruzione e comincia la successiva, causando errori di sintassi che possono interrompere l’esecuzione del codice. Non è necessario che il punto e virgola sia posto nella stessa linea dell’istruzione anche se, per ragioni stilistiche e di facilità di lettura del codice, è una tra le buone norme da eseguire.
<?php
$nome = 'Fabrizio'; // Ok
$cognome = 'Rossi'; // Ok
$professione = 'Divulgatore'
; // Ok, ma sintatticamente valido (chiude l'assegnazione a $professore) sebbene stilisticamente sconsigliato.
$annoDiNascita = 1983 // Qui non è inserito. Il compilatore genererà un errore, anche se questa è l'ultima istruzione.
Eccezioni
Ci sono alcune eccezioni che permettono di non inserire il punto e virgola. Questo, infatti, è omesso alla fine di un blocco di codice, cioè dopo la parentesi graffa di chiusura e nei commenti. Inoltre, il punto e virgola è utilizzato in alcune strutture. Più avanti vedremo che nel ciclo for è il punto e virgola a separare i parametri che alimentano il ciclo.
Liste: la virgola
La virgola (,) è utilizzata per separare due o più elementi. Senza la virgola, l’interprete PHP non riuscirebbe a capire dove termina un elemento e dove inizia un altro. Ad esempio, i valori di un array o i parametri di una funzione devono essere separati dalla virgola.
<?php
$array = ['ciao', 'mondo'];
function somma ($valore, $altroValore) {
return $valore + $altrovalore;
}
È da notare che non è obbligatorio far seguire all’ultimo valore la virgola anche se, in molti casi, qualora essa fosse presente sarebbe ignorata dal compilatore.
Spazi e indentazioni
La gestione degli spazi è un aspetto cruciale nella scrittura del codice. Uno spazio non può interrompere il nome di una variabile, di una keyword, di una funzione, di una proprietà o di un metodo. In questi casi, l’uso improprio di uno spazio genera un errore di sintassi, poiché il parser PHP non sarebbe in grado di riconoscere correttamente il costrutto.
Tuttavia, all’interno delle liste, delle istruzioni e, più in generale, del codice, il numero di spazi utilizzati non è vincolato: lo sviluppatore può aggiungere spazi aggiuntivi per migliorare la leggibilità, purché non alteri la struttura sintattica del linguaggio.
Le indentazioni (rientri di testo) sono anch’esse proibite all’interno dei nomi di variabili, funzioni, keyword e costrutti, ma risultano fondamentali per rendere il codice più leggibile e organizzato. I moderni standard di scrittura del codice raccomandano di utilizzare un numero di spazi non superiore a quattro per ogni livello di indentazione. In alternativa, sebbene sia sconsigliato è possibile usare il carattere di tabulazione, purché si mantenga coerenza all’interno dello stesso file o progetto.
Errato | Corretto |
| |
Commenti