Les instructions conditionnelles en PHP If, Else, ifElse - Letecode

Instructions If, Else et If Else

Dernière mise à jour : 24/02/2022

Dans ce chapitre, vous apprendrez à écrire du code décisionnel à l'aide des instructions if...else...elseif en PHP

Instructions conditionnelles PHP

Comme la plupart des langages de programmation, PHP vous permet également d'écrire du code qui exécute différentes actions en fonction des résultats d'un test logique ou comparatif au moment de l'exécution. Cela signifie que vous pouvez créer des conditions de test sous la forme d'expressions évaluées à true ou false et sur la base de ces résultats, vous pouvez effectuer certaines actions.

Il existe plusieurs instructions en PHP que vous pouvez utiliser pour prendre des décisions :

  • L'instruction if
  • L'instruction if...else
  • L'instruction if...elseif...else
  • L'instruction switch...case

Nous allons explorer chacune de ces déclarations dans les prochaines sections.

La condition if

L'instruction if est utilisée pour exécuter un bloc de code uniquement si la condition spécifiée est vraie. Ce sont les instructions conditionnelles les plus simples de PHP et peuvent être écrites comme suit :

if (condition){
    // Code à exécuter
}

L'exemple suivant affichera "Bon weekend!" si le jour en cours est vendredi :

<?php
$d = date("D");
if($d == "Fri"){
    echo "Bon weekend!";
}
?>

La condition if...else

Vous pouvez améliorer le processus de prise de décision en proposant un choix alternatif en ajoutant une instruction else à l' instruction if . L' instruction if...else vous permet d'exécuter un bloc de code si la condition spécifiée est évaluée comme vraie et un autre bloc de code si elle est évaluée comme fausse. Il peut s'écrire, comme ceci :

 

si (condition) {
    // code à exécuter si la condition est vraie
} autre {
    // code à exécuter si la condition est fausse
}

L'exemple suivant affichera "Bon weekend!" si le jour en cours est vendredi, sinon il sera sortie « Bonne journée! »

 

<?php
$d = date("D");
if($d == "Fri"){
    echo "Bon weekend!";
} else{
    echo "Bonne journée!";
}
?>

La condition if...elseif...else

Le if...elseif...else est une instruction spéciale utilisée pour combiner plusieurs instructions if...else .

 

if (condition1){
    // Code à exécuter si la condition1 est vraie
} elseif (condition2){
    // Code à exécuter si la condition1 est fausse et la condition2 est vraie
} else {
    // Code à exécuter si condition1 et condition2 sont faux
}

L'exemple suivant affichera "Bon weekend!" si le jour actuel est vendredi, et "Bon dimanche !" si le jour actuel est dimanche, sinon il affichera "Bonne journée!"

 

<?php
$d = date("D");
if($d == "Fri"){
    echo "Bon weekend!";
} elseif($d == "Sun"){
    echo "Bon dimanche!";
} else{
    echo "Bonne journée!";
}
?>

Vous découvrirez l'instruction PHP switch-case dans le chapitre suivant .

L'opérateur ternaire

L'opérateur ternaire fournit une manière abrégée d'écrire les instructions if...else . L'opérateur ternaire est représenté par le symbole point d'interrogation ( ?) et il prend trois opérandes : une condition à vérifier, un résultat pour true et un résultat pour false.

Pour comprendre le fonctionnement de cet opérateur, considérons les exemples suivants :

 

<?php
if($age < 18){
    echo 'Mineur'; // Affiche Mineur si âge est inférieur à 18
} else{
    echo 'Adulte'; // Affiche Adulte si âge est superieur ou égal à 18
}
?>

En utilisant l'opérateur ternaire, le même code pourrait être écrit de manière plus compacte :

 

<?php echo ($age < 18) ? 'Mineur' : 'Adulte'; ?>

L'opérateur ternaire dans l'exemple ci-dessus sélectionne la valeur à gauche des deux-points (c'est-à-dire 'Mineur') si la condition est vraie (c'est-à-dire si $age est inférieur à 18), et sélectionne la valeur à droite des deux-points (c'est-à-dire ' Adulte') si la condition est fausse.

 

Conseil : Le code écrit à l'aide de l'opérateur ternaire peut être difficile à lire. Cependant, il fournit un excellent moyen d'écrire des instructions if-else compactes.

 

L'opérateur Null Coalescing (PHP 7)

PHP 7 introduit un nouvel opérateur Null Coalescing ( ??) que vous pouvez utiliser comme raccourci lorsque vous devez utiliser un opérateur ternaire en conjonction avec une fonction isset().

Pour mieux comprendre cela, considérez la ligne de code suivante. Il récupère la valeur de $_GET['name'], s'il n'existe pas ou NULL, il renvoie 'anonyme'.

 

<?php
$name = isset($_GET['name']) ? $_GET['name'] : 'anonyme';
?>

En utilisant l'opérateur de coalescence nul, le même code pourrait être écrit comme suit :

 

<?php
$name = $_GET['name'] ?? 'anonyme';
?>

Comme vous pouvez le voir, la syntaxe ultérieure est plus compacte et facile à écrire.