Skip to content

Boucles en PHP

Objectifs pédagogiques

  • Savoir quand utiliser les boucles while, for et foreach.
  • 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

  1. Créer un fichier boucles.php
  2. Afficher les nombres de 1 à 10 avec une boucle for
  3. Afficher les nombres de 10 à 1 avec while
  4. Créer un tableau $fruits = ['pomme', 'banane', 'cerise']
  5. Afficher chaque fruit avec foreach
  6. Ajouter une condition dans la boucle for pour ignorer le nombre 5 avec continue
  7. Stopper la boucle foreach après le deuxième élément avec break