Sei in: Per i Webmaster - Corso di PHP - Controlli di flusso: if, for e while
In questa sezione vediamo quali parole chiave usa il PHP per controllare il flusso di esecuzione di un programma.
"if.php"
<?php
$a = 7;
// Vediamo se $a è maggiore di 6
if ($a >6)
echo "a è maggiore di 6";
else
echo "a è minore o uguale a 6";
// Vediamo se $a è diverso da zero
if ($a != 0)
echo "a è diverso da zero";
else
echo "a è uguale a zero";
// Adesso cerchiamo di capire se $a è compreso tra 2 e 8
if (($a >2) && ($a<8))
echo "a è minore di 2 e contemporaneamente, a è minore di 8";
else
echo "a è minore o uguale a 2 oppure è superiore o uguale a 8";
if (($a<2) || ($a>4))
echo "a non è compreso tra 2 e 4";
else
echo "a è compreso tra 2 e 4";
// if annidati e uso di parentesi graffe
if ($a>=4) {
echo "a è maggiore o uguale a 4";
echo "Però non sappiamo se effettivamente è uguale a 4 o no";
if ($a= =4)
echo "a è uguale a 4!!!";
else
echo "a è per forza maggiore di 4";
}
?>
La sintassi dell'istruzione "if" è:
if (condizione) {
istruzioni ...
} else {
istruzioni ...
}
Se le istruzioni stanno su una sola riga non sono necessarie le parentesi graffe.
Soffermiamoci sugli operatori usati: "(a) && (b)" vuol dire "(a) AND (b)", quindi significa che sono entrambe vere le condizioni a e b. "(a) || (b)" significa "(a) OR (b)", quindi almeno una tra a e b è vera. "(a = = 0) significa che a è uguale a zero. "(a != b)" vuol dire che a è diverso da zero.
Nell'ultima parte del codice c'è un esempio di "if" annidati e uso di graffe.
"for.php"
<?php
for ($i = 0; $i<10; $i++) {
echo "adesso i vale: $i\n"
}
?>
Il ciclo "for" ci aiuta quando dobbiamo ripetere un'istruzione per un certo numero di volte (in questo caso 10). La sua sintassi prevede:
for (inizio; continua; passo) {
istruzioni...
}
dove:
- INIZIO è l'istruzione che viene eseguita la prima volta che si entra nel ciclo for;
- CONTINUA è la condizione che, se vera, ci fa rimanere nel ciclo;
- PASSO è l'istruzione che eseguiamo ad ogni giro;
- ISTRUZIONI sono tutte le operazioni che facciamo ad ogni passo.
In questo caso mettiamo "$i" a 0, controlliamo ogni volta se siamo arrivati a 10 e incrementiamo ogni volta "$i" di 1. Quando "$i" diventa >= 10 allora usciamo.
"while.php"
<?php
$i = 0;
while ($i >10) {
echo "i vale: $i\n";
$i++;
}
?>
Il ciclo "while" ci permette di eseguire delle istruzioni finchè è vera una certa condizione (in questo caso fino a quando "$i" è minore di 10). la sua sintassi è:
while (CONDIZIONE) {
ISTRUZIONE...
}
