Il costrutto IF, ELSEIF
PHP possiede diversi costrutti mediante i quali è possibile deviare l'esecuzione del codice in base a delle condizioni. Una condizione è vera quando l'espressione che la descrive corrisponde a verità. In PHP si esegue una comparazione tra due variabili per stabilire se una condizione è vera e gli operatori di comparazione possono essere diversi:
| Operatore | Funzione |
| == | Stesso valore, anche con tipo diverso |
| === | Stesso valore, stesso tipo. |
| != | Diverso |
| < | Minore |
| > | Maggiore |
| >= | Maggiore od uguale |
| <= | Minore od uguale |
Il costrutto IF.
Mediante il costrutto IF si istruisce PHP a verificare una condizione e, se positiva, esegue il codice.
<?php
$loggato = true;
if ($loggato === true){
// Qui va il codice da eseguire se la condizione
// è soddisfatta
}
// Altro codice che viene sempre
// eseguito indifferentemente
// dalla condizione
?>
Sintassi alternativa di IF.
Esiste una ulteriore sintassi che PHP accetta per il costrutto IF
<?php $numero = 5;
if ($numero == 5) echo 'il numero scritto è pari a 5'; ?>
oppure
<?php $numero = 5; if ($numero == 5) echo 'il numero scritto è pari a 5'; ?>
Il costrutto IF-ELSE.
Un'altra interessante opzione fornita da PHP, riguardante il costrutto IF, è quella di validare una condizione e, se non soddisfatta, eseguire un blocco di codice.
<?php
$loggato = TRUE;
if ($loggato == true){
// Qui va il codice da eseguire se la condizione
// è soddisfatta
echo ('Benvenuto. Ti sei loggato con successo<br/>');
} else {
// Qui va il codice da eseguire se la condizione
// NON è soddisfatta
echo ('Non è stato possibile riconoscerti. Hai inserito una password sbagliata?<br/>');
}
// Altro codice che viene sempre
// eseguito indifferentemente
// dalla condizione
echo '<hr color="red">Sistema di autenticazione. Copyright lamiazienda.com';
?>
Il costrutto IF-ELSEIF
Altrettanto importante è il costrutto IF-ELSEIF mediante il quale PHP effettua una serie di verifiche su una condizione all'interno di uno stesso IF. Vediamo un esempio
<?php
$numero = 3;
if ($numero == 1){
echo 'Il numero è pari ad 1';
}elseif ($numero==2){
echo 'Il numero è pari ad 2';
}elseif ($numero==3){
// Questa condizione è vera
echo 'Il numero è pari ad 3';
}elseif ($numero==4){
echo 'Il numero è pari ad 4';
}else{
echo 'Numero non riconosciuto';
}
?>
Da come è possibile vedere il costrutto IF-ELSEIF permette, mediante ELSE, di processare del codice qualora nessuna condizione risultasse vera.