Les conditions (if, else, elseif)
Les conditions en PHP
Une structure conditionnelle permet d'exécuter ou non une série d'instructions en fonction d'une condition d'origine. Si le calcul de cette condition retourne TRUE alors le bloc d'instructions concerné est exécuté.
Les expressions évaluées peuvent être plus ou moins complexes, c'est-à-dire qu'elles peuvent être constituées d'une combinaison d'opérateurs de comparaison, d'opérateurs logiques et même de fonctions. Le langage PHP introduit 4 constructions conditionnelles: if, elseif, else et switch.
Avant de les voir, il est nécessaire que l'on aborde les opérateurs de comparaison et les opérateurs logiques.
Les opérateurs de comparaison
Les opérateurs de comparaison sont utilisés pour comparer deux valeurs. Elles permettent souvent de définir des conditions dans les structures conditionnelles.
Egal : $a == $b retourne true si la valeur de $a est égale à celle de $b
Différent : $a != $b retourne true si la valeur de $a est différente de celle de $b
$a <> $b retourne true aussi si la valeur de $a est différente de celle de $b
Inférieure : $a < $b retourne true aussi si la valeur de $a est strictement inférieure à celle de $b
Inférieure ou égal : $a < = $b retourne true aussi si la valeur de $a est inférieure ou égale à celle de $b
Supérieure : $a > $b retourne true aussi si la valeur de $a est strictement supérieure à celle de $b
Supérieure ou égal : $a >= $b retourne true aussi si la valeur de $a est supérieure ou égale à celle de $b
Les opérateurs logiques
En PHP, il y a différents opérateurs logiques qui permettent de combiner des conditions entre elles.
La structure conditionnelle if, else
Cette structure permet de n'exécuter qu'un bloc d'instructions uniquement si l'expression est vraie. Le mot clé if() signifie en anglais 'si'. Autrement dit, si la condition est vérifiée, on exécute l'instruction. Dans le cas contraire, l'instruction sera simplement ignorée ou une autre instruction alternative sera exécutée.
Par conséquent, un if peut être employé seul. Le else étant l'alternative, on peut s'en passer pour n'exécuter un code que si une condition est réalisée.
La syntaxe est :
<?php if(condition) { // Bloc d'instructions } ?> On met la ou les conditions entre parenthèses, et le bloc d'instructions entre deux accolades. Exemple : <?php $vitesse = 100; if($vitesse > 50) { echo "excès de vitesse !"; } ?>
Else
La clause else (traduite par sinon), ajoutée après l'accolade fermante du bloc if(), permet de définir une série d'instructions qui seront exécutées si l'expression if testée est fausse (c'est-à-dire si elle renvoie FALSE).
Voici la syntaxe :
<?php if (condition) { // instruction au cas où la condition serait réalisée; } else{ // instruction au cas où la condition ne serait pas réalisée; } Exemple : <?php $age = 22; if($age >= 18) { echo "Vous êtes majeur."; } else { echo "Vous êtes mineur."; } ?>
Imbrication elseif
On peut imbriquer les if les uns dans les autres. Simplement lorsqu'un if imbriqué aura fini d'être exécuté, il retournera à l'étape logique suivante du rang hiérarchique supérieur.
Exemple :
<?php $nombre = -4; if($nombre == 0) { echo "le nombre est égal à zéro"; } else { if($nombre > 0) { echo "le nombre est positif"; } else { echo "le nombre est négatif"; } } ?>
On peut simplifier le code en utilisant elseif. Et le nombre d'elseif est illimité. Sauf que le else à la fin est obligatoire et il est exécuté lorsqu'aucune des conditions en dessus ne sont pas exécutées.
Exemple :
<?php $nombre = -4; if($nombre == 0) { echo "le nombre est égal à zéro"; } elseif($nombre > 0) { echo "le nombre est positif"; } else { echo "le nombre est négatif"; } ?>