PHP - Boucle for
Diagramme de flux de la boucle for
Avant de plonger dans la syntaxe et les exemples, visualisons comment fonctionne une boucle for
. Une boucle for
est comme un tapis roulant qui avance à travers un ensemble d'instructions. Elle commence par une condition initiale, vérifie si elle satisfait la condition de fin, puis exécute le bloc de code à l'intérieur. Une fois le bloc de code exécuté, elle met à jour le compteur et répète le processus jusqu'à ce que la condition de fin ne soit plus remplie.
st=>start: Début
e=>end: Fin
op1=>operation: Initialiser le compteur
cond=>condition: Vérifier la condition de fin
op2=>operation: Mettre à jour le compteur
op3=>operation: Exécuter le bloc de code
cond2=>condition: La condition de fin est-elle remplie ?
op4=>operation: Non, retourner à op2
op5=>operation: Oui, aller à la fin
st->op1->cond
cond(yes)->op3->op2->cond2
cond2(no)->op4->op2
cond2(yes)->op5->e
Syntaxe de la boucle for
La syntaxe de base d'une boucle for
en PHP est comme suit :
for (initialisation; condition; incrémentation/décrémentation) {
// code à exécuter
}
- Initialisation : C'est là que vous initialisez votre variable compteur.
- Condition : C'est la condition qui doit être vraie pour que la boucle continue. Si elle est fausse, la boucle s'arrête.
- Incrémentation/Décrémentation : C'est là que vous mettez à jour votre compteur. Vous pouvez l'augmenter ou le diminuer en fonction de vos besoins.
Exemple
Commençons par un exemple simple qui affiche les nombres de 1 à 5 en utilisant une boucle for
.
<?php
for ($i = 1; $i <= 5; $i++) {
echo $i . " ";
}
?>
Dans cet exemple, nous initialisons $i
à 1, vérifions si $i
est inférieur ou égal à 5, puis incrémentons $i
de 1 après chaque itération. L'instruction echo
affiche la valeur de $i
suivie d'un espace.
Une boucle for
infinie
Soyez prudent lors de l'écriture de boucles, car une boucle infinie peut faire planter votre programme ou le rendre non réactif. Voici un exemple de boucle infinie :
<?php
for (;;) {
echo "Cette boucle tournera pour toujours !";
}
?>
Cette boucle n'a pas d'initialisation, de condition ni d'incrémentation/décrémentation, donc elle continuera à s'exécuter indéfiniment. Pour l'arrêter, vous devriez interrompre manuellement l'exécution, par exemple en pressant Ctrl + C
dans le terminal.
Une boucle for
décrémentante
Une boucle for
décrémentante est similaire à une boucle d'incrémentation, mais au lieu d'augmenter le compteur, elle le diminue. Voici un exemple qui décompte de 5 à 1 :
<?php
for ($i = 5; $i >= 1; $i--) {
echo $i . " ";
}
?>
Utilisation de la construction for…endfor
PHP propose également une notation abrégée pour les boucles for
en utilisant la construction foreach
. Cependant, comme notre focus est sur la boucle for
traditionnelle, nous nous en tiendrons à celle-ci pour le moment.
Itération sur un tableau indexé avec une boucle for
Vous pouvez utiliser une boucle for
pour itérer sur un tableau indexé, en accédant à chaque élément par son index. Voici un exemple :
<?php
$fruits = array("apple", "banana", "cherry");
for ($i = 0; $i < count($fruits); $i++) {
echo $fruits[$i] . " ";
}
?>
Dans cet exemple, nous utilisons la fonction count()
pour déterminer le nombre d'éléments dans le tableau $fruits
puis itérons sur chaque élément en utilisant son index.
Itération sur un tableau associatif avec une boucle for
Lorsque vous travaillez avec des tableaux associatifs, vous pouvez utiliser une boucle for
pour itérer sur les clés et les valeurs. Voici un exemple :
<?php
$students = array(
"Alice" => 25,
"Bob" => 27,
"Charlie" => 22
);
foreach ($students as $name => $age) {
echo "$name a $age ans.<br>";
}
?>
Dans cet exemple, nous utilisons la construction foreach
pour itérer sur le tableau associatif $students
. La variable $name
contient la clé (nom de l'étudiant), et la variable $age
contient la valeur (âge de l'étudiant). Nous affichons ensuite le nom et l'âge de chaque étudiant.
Utilisation de boucles for
imbriquées en PHP
Parfois, vous pouvez avoir besoin d'utiliser des boucles for
imbriquées pour effectuer des tâches plus complexes. Voici un exemple qui affiche un tableau de multiplication :
<?php
for ($i = 1; $i <= 5; $i++) {
for ($j = 1; $j <= 5; $j++) {
echo $i * $j . "\t";
}
echo "<br>";
}
?>
Dans cet exemple, la boucle externe itère sur les lignes (de 1 à 5), et la boucle interne itère sur les colonnes (également de 1 à 5). Le produit des numéros de ligne et de colonne est affiché, créant un tableau de multiplication.
Voilà pour notre introduction aux boucles for
en PHP ! Souvenez-vous, la pratique rend parfait, donc essayez d'écrire du code et expérimentez avec différents scénarios. Bon codage !
Credits: Image by storyset