Les développeurs PHP peuvent se perdre dans des conditions imbriquées complexes, rendant le code difficile à maintenir.
Cette complexité accroît les erreurs, ralentit le développement et compromet la performance des applications.
Apprenez à maîtriser les instructions conditionnelles en PHP, comme if-else
, switch
, et les opérateurs ternaires. Cet article vous guide pour simplifier votre code, améliorer sa lisibilité, et minimiser les erreurs. Optimisez votre développement PHP avec des pratiques de contrôle de flux claires et efficaces.
Introduction
Les instructions conditionnelles en PHP permettent d’exécuter du code en fonction de certaines conditions. Elles comprennent principalement :
- if : Exécute un bloc de code si une condition est vraie.
- else : Exécute un bloc de code si la condition de l
'if
n’est pas vraie. - elseif: Permet de spécifier une nouvelle condition si la condition de l’
if
n’est pas vraie. - switch : Évalue une expression contre une liste de cas et exécute le bloc de code associé au cas correspondant.
Découverte des Instructions Conditionnelles en PHP 8
Dans la section précédente, nous avons vu l’introduction. Maintenant, nous allons passer aux instructions conditionnelles.
Comme dans les autres langages, l’instruction if
est l’une des plus utilisée. Elle permet l’exécution conditionnelle d’une partie de code.
L’instruction if
se comporte en PHP comme en C ou en Java, vous pouvez donc passer au point suivant si vous connaissez un de ces langages, notez simplement la forme abrégée décrite en fin de paragraphe et spécifique à PHP.
Instruction if then else de base :
Instruction if then else plus élaborée :
La condition_1 est évaluée de façon à produire un résultat booléen (TRUE/FALSE)
Si condition_1 renvoie TRUE, PHP exécutera bloc_instructions_1 et si elle renvoie FALSE, bloc_instructions_2 sera exécuté si expression_2 est vrai, sinon bloc_instructions_3 sera exécuté On peut imbriquer indéfiniment des instructions if les unes dans les autres, ce qui permet une grande flexibilité dans l’exécution de morceaux de code suivant un grand nombre de conditions. Seulement la source produite devient rapidement complexe à interpréter; pour en faciliter la maintenance on veillera à utiliser le maximum de parenthèses dans les expressions et de commentaires à l’extérieur.
Exemple : Vérification de l’âge pour le droit de vote
php
/*
si tu as 18 ans // condition
alors tu peux voter // instruction
*/
$age=18;
if ($age==18) {
echo "tu peux voter";
}
Dans cet exemple :
- Condition : La condition
($age == 18)
vérifie si la variable $age est égale à 18. - Instruction : Si la condition est vraie, le message « Tu peux voter » est affiché grâce à echo.
Ce code montre comment utiliser l’instruction if pour exécuter du code conditionnellement en fonction d’une condition spécifiée.
Bravo vous avez réussi ce code !
Contrôle du Typage des Variables en PHP 8
Le contrôle du typage de la variable en PHP concerne la vérification et la gestion des types de données stockés dans les variables. En PHP, les variables peuvent contenir différents types de données comme des entiers, des chaînes de caractères, des booléens, des tableaux, etc. Il est souvent nécessaire de vérifier le type d’une variable avant de manipuler ou d’utiliser ses données, surtout dans les situations où la variable peut contenir différents types de données à des moments différents.
- Ici, l’opérateur
==
est utilisé pour comparer la valeur de la variable$age
avec le nombre entier 18. - L’opérateur
==
vérifie l’égalité en valeur uniquement, ce qui signifie qu’il ne tient pas compte du type de données. Il convertit les types si nécessaire pour faire correspondre les valeurs et effectue ensuite la comparaison.
- Ici, l’opérateur
===
est utilisé pour comparer à la fois la valeur et le type de la variable $age avec le nombre entier 18. - L’opérateur
===
vérifie l’égalité stricte en valeur et en type. Cela signifie que la condition ne sera vraie que si $age est exactement égal à 18 et du même type (entier dans ce cas). Différence entre == et ===
- ‘== ’(égalité en valeur) : Comparaison qui ne tient pas compte du type de données. Si nécessaire, il convertit les types pour faire correspondre les valeurs avant de les comparer.
- ‘===’(égalité stricte en valeur et en type) : Comparaison qui nécessite que les valeurs et les types de données des deux côtés de l’opérateur soient identiques pour que la condition soit vraie
Découverte des Opérateurs de Comparaison en PHP 8
Dans l’exemple précédent, nous avons vérifié si un utilisateur âgé de 18 ans pouvait voter. Cependant, cela n’est pas suffisant si l’utilisateur a, par exemple, 19 ans. Pour cela, nous utiliserons des opérateurs de comparaison afin de vérifier les conditions de manière plus précise.
Opérateurs de Comparaison en PHP
Opérateur | Explication |
---|---|
Égalité Simple (==) | Vérifie si deux valeurs sont égales en valeur, sans tenir compte du type.
|
Égalité Stricte (===) | Vérifie si deux valeurs sont égales en valeur et en type.
|
Stricte (!==) | Vérifie si deux valeurs ne sont pas égales en valeur ou en type. |
Supérieur (>) et Inférieur (<) | Vérifient si une valeur est supérieure (>) ou inférieure (<) à une autre valeur.
|
Supérieur ou Égal (>=) et Inférieur ou Égal (<=) | Vérifient si une valeur est supérieure ou égale (>=) ou inférieure ou égale (<=) à une autre valeur.
|
Exemple :
: supérieur
- <= : inferieur ou égalité
- >= : supérieur ou égalité
- !== : identité diffèrent
*/
$age=19 ;
if ($age>=18) {
echo "tu peux voter";
}
- Maintenant en voir un peut pratique
Exercice 1 : Mettre en place les bases de la page web
Dans cet exercice, nous allons créer deux fichiers : index.php, qui contiendra le code HTML de la page, et style.css, qui contiendra le code CSS.
Cet exercice permet à l’utilisateur d’entrer son âge et de le soumettre. Une fois que l’utilisateur clique sur le bouton « Valider », les données du formulaire sont envoyées au serveur en utilisant la méthode POST
Voila le contenue de fichier index.php
voter
Et pour style.css
body{
background-color: #f3f3f3;
font-family: sans-serif;
font-size: 1rem;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
margin: 0;
}
div{
max-width: 400px;
width: 85%;
border: 1px solid #ddd;
padding: 15px;
background-color: #fff;
text-align: center;
}
div label{
display: block;
margin-bottom: 10px;
}
div input{
outline: none;
}
div input [type="submit"]{
cursor: pointer;
}
Exercice 1 : Conditionner l'affichage du formulaire
Dans cet exercice, nous allons afficher le formulaire en modifiant le fichier index.php avec le code ci-dessous afin de montrer que si le formulaire est soumis, un lien de retour est affiché ; sinon, le formulaire est présenté pour saisie.
voter
Exercice 1 : Conditionner l'information à écrire sur la page en PHP 8
Maintenant en voire comment conditionner les informations qui sont écrire sur la page en modifiant le code de fichier index.php en ajoutant la condition sur âge comme vous voyer dans le code si dessous
voter
Retour
=18) {
echo "Vous pouvez voter";
} else {
echo "Vous ne pouvez pas voter";
}
?>
Exercice 1 : Conditionner la présence des données en PHP 8
Modifications apportées au code améliorent la validation des données du formulaire en ajoutant des contrôles supplémentaires pour garantir l’exactitude et l’intégrité des informations saisies par l’utilisateur. Désormais, lorsque l’utilisateur soumet le formulaire, le script vérifie d’abord si le champ d’âge est vide et affiche un message demandant de fournir l’âge si tel est le cas. Ensuite, il vérifie si la valeur saisie est un nombre entier, et si ce n’est pas le cas, il demande à l’utilisateur de saisir un âge en chiffres entiers. Enfin, si l’âge est valide, le script détermine si l’utilisateur est éligible pour voter en fonction de son âge : il affiche un message indiquant que l’utilisateur peut voter si l’âge est de 18 ans ou plus, sinon, il indique que l’utilisateur ne peut pas voter. Ces ajouts renforcent la robustesse du formulaire en empêchant les soumissions incorrectes et en fournissant des messages clairs et précis pour guider l’utilisateur.
Voile le code à modifier
=18) {
echo "Vous pouvez voter";
}
else {
echo "Vous ne pouvez pas voter";
}
}
?>
Combiner les Conditions
Combiner les conditions permet de créer des expressions logiques plus complexes et de prendre des décisions plus précises dans le flux de votre programme. En PHP, les conditions peuvent être combinées en utilisant les opérateurs logiques suivants :
Opérateur | Caractéristique | |
---|---|---|
ET logique (&&) | Renvoie un résultat faux dès qu’il trouve la première expression fausse, c’est pourquoi on l’appelle un opérateur de court-circuit.
| |
OU logique ( || ) | Renvoie vrai dès qu’il trouve la première expression vraie, c’est pourquoi il est également appelé opérateur de court-circuit.
| |
Logique NOT (!) | Est un opérateur unaire, c’est-à-dire qu’il fonctionne sur un seul opérande.
|
Exemple Pratique
: supérieur
- <= : inferieur ou égalité
- >= : supérieur ou égalité
- !== : identité diffèrent
- - plusieurs condition
ET : AND ,&&
OU : OR , ||
*/
$age=19;
if (($age>17) && ($age<=20)) {
echo "tu peux créer ta carte d'electeure";
}elseif(($age<=17) OR ($age >=50)){
echo "tu ne peut pas voter ";
}else{
echo "tu peux voter";
}
Exercice 1 : Ajouter une nouvelle contre-condition en PHP 8
Peut mettre en pratique ces combinons des conditions en modifier le code précédemment par le suivant qui permet de vérifier si age qu’utilisateur entrer est correcte
=18) {
echo "Vous pouvez voter";
}
else {
echo "Vous ne pouvez pas voter";
}
}
?>
Voila le résultat si entrer un nombre inferieure a zéro
Exercice 2 : Comparer une chaîne de caractères en PHP 8
Dans cet exercice, nous allons créer un formulaire permettant à l’utilisateur de saisir son nom et de vérifier s’il est un élève ou un formateur. Voici le code pour le fichier PHP :
Name
Voilà le résultat d’affichage si en utilisateur pas un formateur
Exercice 2 : Écrire le programme différemment en PHP 8
Dans cet exercice en montrant autre méthode pour créer le programme voile la modification de script
Bravo vous avez réussi ce code !
Comprendre l'Opérateur du Triple Choix en PHP 8
L’opérateur de comparaison <=>
pour simplifier la comparaison entre deux variables et déterminer leur relation en une seule instruction. Il permet d’écrire du code de comparaison de manière plus concise et claire.
Exemple pratique
$b;
if($result == -1) {
echo '$a est plus petit que $b';
} elseif($result == 0) {
echo '$a est égal à $b';
} elseif($result == 1) {
echo '$a est plus grand que $b';
}
Écrire un Switch en PHP 8
Le switch est une structure de contrôle utilisée pour exécuter une des nombreuses branches de code en fonction de la valeur d’une variable ou d’une expression. Il est souvent utilisé comme une alternative aux longues chaînes de if-elseif-else.
Syntaxe :
Voilà comment cela fonctionne :
- L’expression est évaluée une fois
- La valeur de l’expression est comparée aux valeurs de chaque cas
- S’il y a une correspondance, le bloc de code associé est exécuté
- Le break mot clé sort du bloc de commutation
- Le default bloc de code est exécuté s’il n’y a pas de correspondance
Organigramme de l’instruction switch :
Le résultat d’affichage
Exemple :
$b;
switch ($result) {
case -1:
echo '$a est plus petit que $b';
break;
case 0:
echo '$a est égal à $b';
break;
case 1:
echo '$a est plus grand que $b';
break;
default:
echo 'Valeur inattendue';
}
Résultat d’affichage
Exercice 3 : Remplacer la condition par un switch en PHP 8
Dans cet exercice en remplacer le code exercice précédemment par le code suivant en utilisant switch
Name
Résultat d’affichage
Exercice 3: Écrire une instruction ternaire en PHP 8
L’instruction ternaire est une manière concise d’écrire une simple condition if-else en une seule ligne.
Exemple
En peut remplacer le switch par le code suivant en utilisant instruction ternaire
echo (strtolower($_POST['nom']) == 'carl') ? "Tu es le formateur" : "Tu es un élève";
Écrire Rapidement une Instruction Conditionnelle en PHP 8
Ce code vérifie si une variable est définie et utilise des techniques différentes (conditions if-else et opérateur null coalescent) pour gérer les valeurs et afficher les messages appropriés.
Tester le Type d'une Variable en PHP 8
il existe plusieurs fonctions pour tester le type d’une variable. Voici quelques-unes des fonctions les plus couramment utilisées :
- gettype() : Retourne le type de variable sous forme de chaîne.
Exemple
Bravo vous avez réussi ce code !
- is_int(), is_float(), is_string(), is_bool(), is_array(), is_object() : Retournent true si la variable est du type spécifié.
Exemple
Résumé des Conditions en PHP 8
- Les conditions permettent à PHP de prendre des décisions en fonction de la valeur des variables.
- La forme de condition la plus courante est if … elseif … else qui signifie « si »… « sinon si »… « sinon ».
- On peut combiner des conditions avec les instructions&& (« et ») et|| (« ou »).
- Si une condition comporte de nombreux elseif , il peut être plus pratique d’utiliser la condition switch.
- Les ternaires sont des conditions condensées qui font un test sur une variable, et en fonction des résultats de ce test, elles donnent une valeur à une autre variable. Elles sont cependant plus rarement utilisées.
Que de notions importantes dans cette partie de mise en pratique ! Nous allons maintenant introduire le concept des boucles.
Formez-vous gratuitement avec Alphorm !
Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui. Découvrez des cours variés pour tous les niveaux !
Conclusion
En maîtrisant les conditions PHP 8, vous serez en mesure d’écrire des codes plus robustes et flexibles, capables de s’adapter à divers scénarios. Les instructions conditionnelles comme if, else, switch, et les opérateurs de comparaison sont des outils puissants qui, lorsqu’ils sont utilisés correctement, peuvent simplifier la logique de votre code et améliorer sa lisibilité. N’oubliez pas que la pratique régulière à travers des exercices et des projets réels est la clé pour solidifier votre compréhension des conditions en PHP 8. Continuez à explorer et à expérimenter avec ces concepts pour devenir un développeur PHP 8 accompli. Dans l’article suivant nous allons traiter les boucles PHP 8.