If - Else
Fait partie de la section Fondamentaux du Journey PHP de Coddy — leçon 29 sur 71.
Parfois, vous avez besoin que votre code fasse une chose quand une condition est vraie, et quelque chose de différent quand elle est fausse. La clause else vous permet de gérer les deux cas.
Ajoutez else après votre bloc if pour spécifier ce qui se passe quand la condition est fausse :
<?php
$age = 15;
if ($age >= 18) {
echo "You can vote";
} else {
echo "You cannot vote yet";
}
?>Puisque $age vaut 15, la condition est fausse, donc PHP exécute le bloc else et affiche «You cannot vote yet».
Pour plus de deux possibilités, enchaînez les conditions en utilisant elseif :
<?php
$score = 75;
if ($score >= 90) {
echo "Grade: A";
} elseif ($score >= 80) {
echo "Grade: B";
} elseif ($score >= 70) {
echo "Grade: C";
} else {
echo "Grade: F";
}
?>PHP vérifie chaque condition du haut vers le bas et exécute le premier bloc qui correspond. Une fois qu'une correspondance est trouvée, il ignore toutes les conditions restantes. Ici, 75 échoue aux deux premières vérifications mais passe $score >= 70, donc « Grade: C » est imprimé.
Défi
FacileLisez deux entiers depuis l'entrée : une temperature et une hour (au format 24 heures, 0-23).
Déterminez le message approprié en fonction des conditions suivantes :
- Si la température est inférieure à 0, affichez
Freezing conditions - Sinon, si la température est inférieure à 15, affichez
Cold weather - Sinon, si la température est inférieure à 25, affichez
Pleasant weather - Sinon, affichez
Hot weather
Ensuite, sur une nouvelle ligne, affichez un salut basé sur l'heure :
- Si l'heure est inférieure à 12, affichez
Good morning! - Sinon, si l'heure est inférieure à 18, affichez
Good afternoon! - Sinon, affichez
Good evening!
Exemple :
Si les entrées sont 20 et 9, la sortie devrait être :
Pleasant weather
Good morning!Si les entrées sont -5 et 14, la sortie devrait être :
Freezing conditions
Good afternoon!Aide-mémoire
La clause else spécifie ce qui se passe quand une condition if est fausse :
<?php
$age = 15;
if ($age >= 18) {
echo "You can vote";
} else {
echo "You cannot vote yet";
}
?>Utilisez elseif pour chaîner plusieurs conditions :
<?php
$score = 75;
if ($score >= 90) {
echo "Grade: A";
} elseif ($score >= 80) {
echo "Grade: B";
} elseif ($score >= 70) {
echo "Grade: C";
} else {
echo "Grade: F";
}
?>PHP vérifie les conditions de haut en bas et exécute le premier bloc correspondant, puis ignore le reste.
Essayez vous-même
<?php
// Lire l'entrée
$temperature = intval(fgets(STDIN));
$hour = intval(fgets(STDIN));
// TODO: Écrivez votre code ci-dessous
// Déterminer le message météo en fonction de la température
// Déterminer la salutation en fonction de l'heure
?>Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators