(PHP 4, PHP 5, PHP 7, PHP 8)
L'instruction continue est utilisée
dans une boucle afin d'éluder les instructions de
l'itération courante et de continuer l'exécution à la condition de
l'évaluation et donc, de commencer la prochaine itération.
Note: En PHP, la structure
switchest considérée comme une boucle parcontinue.continuese comporte commebreak(lorsque aucun argument n'est passé) mais émettra un avertissement, car il est probable que ceci soit une erreur. Si unswitchse trouve à l'intérieur d'une boucle,continue 2va continuer sur la prochaine itération de la boucle externe.
continue accepte un argument numérique
optionnel qui vous indiquera combien de structures
emboîtées doivent être éludées. La valeur par défaut
est 1, ce qui revient à aller directement
à la fin de la boucle courante.
<?php
$arr = ['zero', 'one', 'two', 'three', 'four', 'five', 'six'];
foreach ($arr as $key => $value) {
if (0 === ($key % 2)) { // évite les membres pairs
continue;
}
echo $value . "\n";
}
?>Les exemples ci-dessus vont afficher :
one three five
<?php
$i = 0;
while ($i++ < 5) {
echo "Outer\n";
while (1) {
echo "Middle\n";
while (1) {
echo "Inner\n";
continue 3;
}
echo "This never gets output.\n";
}
echo "Neither does this.\n";
}
?>Les exemples ci-dessus vont afficher :
Outer Middle Inner Outer Middle Inner Outer Middle Inner Outer Middle Inner Outer Middle Inner
Oublier le point virgule après continue peut porter
à confusion. Voici un exemple de ce que vous ne devez pas faire :
<?php
for ($i = 0; $i < 5; ++$i) {
if ($i == 2)
continue
print "$i\n";
}
?>On peut s'attendre à ce que le résultat soit :
0 1 3 4
| Version | Description |
|---|---|
| 7.3.0 |
continue à l'intérieur d'un switch
qui tente d'agir comme une déclaration break pour
switch émettra E_WARNING.
|