Les structures de contrôle - les conditions en PHP

Vous trouverez toutes les structures de contrôles et intérations que propose PHP ici :
https://www.php.net/manual/fr/language.control-structures.php

Le IF

L'instruction if est une des plus importantes instructions de tous les langages.
Elle permet l'execution d'une partie du code sous condition !

        <?php
if ($a > $b):
    echo 'a est plus grand que b';
endif;
?>

Le ELSE

L'instruction ELSE est executée uniquement si l'instruction IF n'est pas vrai.

        <?php
if ($a > $b):
    echo 'a est plus grand que b';
else:
    echo "a est plus petit que b";
endif;
?>

L'opérateur ternaire

Un autre opérateur conditionnel est l'opérateur ternaire "?:".

        
            <?php
            // Exemple d'utilisation pour l'opérateur ternaire
            $valeur = ($maVariable != '') ? 'vrai' : 'faux';
            
            // La ligne ci-dessus est identique à la condition suivante :
            if ($maVariable != '') {
            $valeur = 'vrai';
            }
            else {
            $valeur = 'faux';
            }

            ?>

Les opérateurs de comparaison

Les opérateurs de comparaison, comme leur nom l'indique, vous permettent de comparer deux valeurs.

Opérateurs de comparaison les plus utilisés
Exemple Nom Résultat
$a == $b Egal TRUE si $a est égal à $b après le transtypage.
$a === $b Identique TRUE si $a est égal à $b et qu'ils sont de même type.
$a != $b Différent TRUE si $a est différent de $b après le transtypage.
$a < $b Plus petit que TRUE si $a est strictement plus petit que $b.
$a > $b Plus grand TRUE si $a est strictement plus grand que $b.
$a <= $b Inférieur ou égal TRUE si $a est plus petit ou égal à $b.
$a >= $b Supérieur ou égal TRUE si $a est plus grand ou égal à $b.

Pour en savoir plus sur les opérateurs de comparaison et tout comprendre c'est ici :
https://www.php.net/manual/fr/language.operators.comparison.php

Les opérateurs logiques

Lors de la comparaison de variables, nous avons souvent besoin de savoir si un ensemble de valeurs sont TRUE ou FALSE pour décider de la suite du script. C'est ce que l'on nomme les opérateurs logiques.

Les opérateurs logiques
Exemple Nom Résultat
$a && $b And (Et) TRUE si $a ET $b sont TRUE.
$a || $b Or (Ou) TRUE si $a OU $b est TRUE.
! $a Not (Non) TRUE si $a n'est pas TRUE.
$a xor $b XOR TRUE si $a OU $b est TRUE, mais pas les deux en même temps.

Exemples

Testons le code suivant pour comprendre ce qui se passe.

<?php
echo '5 >= 6 : '; 
var_dump(5 >= 6);
echo "'1' == 1 : ";
var_dump('1' == 1);
echo "'1' === 1 : ";
var_dump('1' === 1);
echo '5 != 6 + 4 - 9 : ';
var_dump(5 != 6 + 4 - 9);
echo '5 > 6 === 5 > 9 : ';
var_dump(5 > 6 === 5 > 9);
echo 'true || false && (2 > 1) : ';
var_dump(true || false && (2 > 1));
echo '(2 === 4 || (4 < 1)) && (19 >= 17 + 2) : ';
var_dump ((2 === 4 || (4 < 1)) && (19 >= 17 + 2));

echo '==============\n';

$x = 3;
$y = 6;
$z = 5;

echo '$z != 0 && (2 * ($x - $y) < 3) : ';
var_dump($z != 0 && (2 * ($x - $y) < 3));
echo '((($x * $y > 0) && !($y * $z > 0)) || ($x >= 0)) : ';
var_dump(((($x * $y > 0) && !($y * $z > 0)) || ($x >= 0)));
?>

Exercices

Exercice 1 : Créer deux variables $a et $b PHP contenant des chiffres.
Tester quel chiffre sera le plus grand et afficher un message contenant la valeur des variables en indiquant que $a est plus grand que $b ou que $b est plus grand que $a.

Exercice 2 : Tester si $a est supérieur à 10 et $b est inférieur à 100 alors afficher un message de validation sinon un message d'erreur.

Exercice 3 : Tester si $a est supérieur à 10 ou $b est inférieur à 100 alors afficher un message de validation sinon un message d'erreur.

Exercice 4 : Tester si $a et $b sont de même type et ont la même valeur. Afficher un message en fonction du résultat du test.
Modifier le type de $b sans toucher à sa valeur pour que le test ne se vérifie plus.

Exercice 5 : réaliser les exercices précédents avec l'opérateur ternaire.

Exercice 6 : Déclarer une variable $genre qui contient une chaîne de caractères (homme, femme, no-genre).
Créer une condition qui affiche un message différent en fonction de la valeur de la variable.

Exercice 7 : Déclarer une variable $budget qui contient la somme de 1 553,89 €. Déclarer une variable $achats qui contient la somme de 1 554,76 €.
Afficher si le budget permet de payer les achats.

Exercice 8 : Déclarer une variable $age qui contient la valeur de type integer de votre choix.
Réaliser une condition pour afficher si la personne est mineure ou majeure.

Exercice 9 : Déclarer une variable $heure qui contient la valeur de type integer de votre choix comprise entre 0 et 24.
Créer une condition qui affiche un message si l'heure est le matin, l'après-midi ou la nuit.