Corso di PHP

Le strutture di controllo - Parte I

 

Uno script PHP è formato da una serie di istruzioni la cui sequenza implementa l’algoritmo desiderato. Un’istruzione può essere un’assegnamento, una chiamata ad una funzione, un ciclo o un’istruzione condizionata. Più istruzioni possono essere raggruppate insieme includendole tra parentesi graffe; in questo caso si parla di blocco di codice. Un blocco di codice è del tutto simile ad una istruzione singola e quindi ne segue anche le regole.

Il flusso di un programma, e quindi gli statement da eseguire, viene scelto utilizzando le strutture di controllo del linguaggio. Qui di seguito analizzeremo quelle di PHP.

If
Il costrutto if è tra i più importanti disponibili in PHP. Esso permette l’esecuzione condizionata di frammenti di codice. La sua sintassi è la seguente

if (condizione)
istruzione1;

Un’istruzione del tipo precedente testa la condizione tra parentesi e solo nel caso essa abbia il valore booleano TRUE esegue istruzione1. Il flusso del programma prosegue quindi con lo statement immediatamente successivo. L’istruzione del corpo di un costrutto if può naturalmente essere anche un blocco di codice.

Una struttura if può contenere anche la clausola else ed assumere quindi la forma:

if (condizione)
istruzione1
else
istruzione2;

in questo caso istruzione2 viene eseguita solo nel caso in cui la condizione dell’if assume il valore booleano FALSE.
Più istruzioni if… else… possono essere annidate le une dentro le altre fino a formare strutture di complessità arbitraria.
Esempio:

if (condizione1)
{ if (condizione2)
istruzione1
else
istruzione2
}
else
{ if (condizione3)
istruzione3
else
istruzione4
}

una alternativa ad else è la clausola elseif. Essa, come già else, estende l’istruzione if ma, al contrario di else, esegue l’istruzione ad essa associata se la condizione di test è vera. Per esempio il frammento di codice

if ($a > $b)
{
echo "a è maggiore di b";
}
elseif ($a == $b)
{
echo "a è uguale a b";
}
else
{
print "a è minore di b";
}

while
Il ciclo while è il più semplice ciclo messo a disposizione da PHP. Il suo funzionamento è analogo a quello degli omologhi per il linguaggio C o per Java. La sua sintassi è:

while (condizione)
istruzione1;


In questo caso istruzione1viene eseguita fin quando la condizione tra parentesi tonde assume il valore booleano TRUE. La condizione viene testata solo ogni volta all’inizio del ciclo. Naturalmente per evitare cicli infiniti l’istruzione del corpo del while deve prima o poi cambiare il valore della condizione testata.

Con il ciclo while, come già nel caso del ciclo if, è possibile controllare far eseguire più istruzioni racchiuse in un blocco di codice o terminate dall’etichetta di fine ciclo endwhile. In base a quanto appena detto il frammento di codice

$i = 1;
while ($i <= 10):
print $i;
$i++;
endwhile;


risulta del tutto equivalente al seguente:

$i = 1;
while ($i <= 10)
{
echo $i;
$i++;
}

do… while…
Il ciclo do… while…è molto simile al ciclo while eccezion fatta per il motivo che esso viene controllato da un test eseguito alla fine del blocco di istruzioni controllate. Ne consegue che il corpo del ciclo viene eseguito almeno una volta. La sua sintassi è la seguente:

do
{
istruzione1;
}
while (condizione);



Durante la prossima lezione continueremo la panoramica delle strutture di controllo di PHP cominciando con il ciclo for.

 

Torna all'indice Generale del corso di Corso di PHP di Software Planet