Boucles en PHP
Objectifs pédagogiques
- Savoir quand utiliser les boucles
while,foretforeach. - Comprendre la logique de répétition de blocs d'instruction.
- Identifier les cas d'usage typiques de chaque structure.
Boucle while
La boucle while permet de répéter une instruction tant qu'une condition est vraie.
Elle est idéale lorsque l’on ne connaît pas à l’avance combien de fois répéter une action.
php
$i = 0;
while ($i < 3) {
echo "i vaut $i<br>";
$i++;
}Schéma explicatif
mermaid
flowchart TD
A[Début] --> B{Condition}
B -- vrai --> C[Exécuter le bloc]
C --> B
B -- faux --> D[Sortie de la boucle]Boucle for
La boucle for est adaptée lorsque le nombre d'itérations est connu.
Elle combine initialisation, condition de boucle et incrémentation.
php
for ($i = 1; $i <= 5; $i++) {
echo "Compteur : $i<br>";
}Schéma explicatif
mermaid
flowchart TD
A[Début] --> B[Initialisation]
B --> C{Condition}
C -- vrai --> D[Exécuter le bloc]
D --> E[Incrémentation]
E --> C
C -- faux --> F[Sortie de la boucle]Boucle foreach
Spécifique aux tableaux, la boucle foreach permet de parcourir facilement chaque élément.
php
$taches = ['Coder', 'Tester', 'Livrer'];
foreach ($taches as $tache) {
echo $tache . "<br>";
}Avec clé + valeur :
php
$contacts = ['Alice' => 'alice@example.com', 'Bob' => 'bob@example.com'];
foreach ($contacts as $nom => $email) {
echo "$nom : $email<br>";
}Schéma explicatif
mermaid
flowchart TD
A[Début] --> B[Premier élément du tableau]
B --> C[Exécuter le bloc avec l'élément courant]
C --> D{Élément suivant ?}
D -- oui --> C
D -- non --> E[Sortie de la boucle]Contrôle du flux : break et continue
break
Permet de quitter une boucle ou un switch immédiatement.
php
for ($i = 0; $i < 10; $i++) {
if ($i === 5) {
break; // Stoppe la boucle quand i vaut 5
}
echo "$i ";
}Résultat :
0 1 2 3 4
continue
Permet de passer à l’itération suivante sans exécuter le reste du bloc courant.
php
for ($i = 0; $i < 5; $i++) {
if ($i === 2) {
continue; // Ignore 2
}
echo "$i ";
}Résultat :
0 1 3 4
Exercice pratique
- Créer un fichier
boucles.php - Afficher les nombres de 1 à 10 avec une boucle
for - Afficher les nombres de 10 à 1 avec
while - Créer un tableau
$fruits = ['pomme', 'banane', 'cerise'] - Afficher chaque fruit avec
foreach - Ajouter une condition dans la boucle
forpour ignorer le nombre 5 aveccontinue - Stopper la boucle
foreachaprès le deuxième élément avecbreak