Manuel PHP
Précédent | Chapitre 16. Les structures de contrôle | Suivant

# `do-while`

Les boucles `do-while` ressemblent beaucoup aux boucles `while`, mais l'expression est testée à la fin de chaque itération plutôt qu'au début. La principale différence par rapport à la boucle `while` est que la première itération de la boucle `do-while` est toujours exécutée (l'expression n'est testée qu'à la fin de l'itération), ce qui n'est pas le cas lorsque vous utilisez une boucle `while` (l'expression est vérifiée au début de chaque itération).

Il n'y a qu'une syntaxe possible pour les boucles `do-while` :

Exemple 16-11. Instruction `do-while`

`<?php $i = 0; do { echo $i; } while ($i > 0); ?>`

La boucle ci-dessus ne va être exécutée qu'une seule fois, car lorsque l'expression est évaluée, elle vaut `FALSE` (car la variable `$i` n'est pas plus grande que 0) et l'exécution de la boucle s'arrête.

Les utilisateurs familiers du C sont habitués à une utilisation différente des boucles `do-while` , qui permet de stopper l'exécution de la boucle au milieu des instructions, en l'encapsulant dans un `do-while`(0) la fonction `break`. Le code suivant montre une utilisation possible :

Exemple 16-12. Instruction `while` et `break`

`<?php do { if ($i < 5) { echo "i n'est pas suffisamment grand"; break; } $i *= $factor; if ($i < $minimum_limit) { break; } echo "i est bon"; /* ...traitement de i... */ } while (0); ?>`

Ne vous inquiétez pas si vous ne comprenez pas tout correctement. Vous pouvez écrire des scripts très très puissants sans utiliser cette fonctionnalité.

Précédent | Sommaire | Suivant
`while` | Niveau supérieur | `for`