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