L'instruction continue et son argument optionnel
Par Auteur INTERNE, vendredi 24 août 2001 à 23:24 :: Trucs et Astuces PHP :: #341 :: rss
L'instruction continue permet de passer à l'itération suivante d'une boucle.
Voici un petit exemple :
<?php
$debut = 0;
$fin = 4;
while($debut<$fin)
{
$debut++;
print "$debut : Bouclage normal<br>\n";
continue;
print "cette chaîne ne s'affichera pas !!!";
}
?>
Cet exemple illustre le fonctionnement de continue. L'instruction fait reboucler à l'itération suivante la boucle while et tout ce qui se trouve dans la boucle mais après le continue ne sera pas exécuté.Autre exemple qui affiche uniquement les éléments dont l'indice du tableau est paire :
<?php
$tableau = array("bleu", "rouge", "vert", "noir", "blanc", "gris");
while (list ($indice, $couleur) = each ($tableau )) {
if ($indice % 2)
continue;
print "$indice : $couleur<br>\n";
}
?>
En allant plus loin, voici un exemple avec des boucles imbriquées. Le paramètre optionnel de l'instruction permet de choisir quelle sera la boucle qui passera à l'itération suivante :<?php
$debut = 0;
$fin = 10;
while($debut<$fin)
{
$debut++;
print "$debut : Bouclage normal<br>\n";
while(1)
{
print "boucle 1<br>\n";
while(1)
{
print "boucle 2<br>\n";
continue 3;
}
print "cette chaîne ne s'affichera pas !!!";
}
print "cette chaîne non plus ne s'affichera pas !!!";
}
?>
En exécutant cet exemple on obtient le résultat suivant :1 : Bouclage normal boucle 1 boucle 2 2 : Bouclage normal boucle 1 boucle 2 .... .... 9 : Bouclage normal boucle 1 boucle 2 10 : Bouclage normal boucle 1 boucle 2Les deux print suivants le continue ne sont pas affiché et le rebouclage se fait sur la première boucle.
Pour comparer continue avec break, voici le résultat si on remplace la ligne :
continue 3;Par,
break 2;Voici le résultat :
1 : Bouclage normal boucle 1 boucle 2 cette chaîne non plus ne s'affichera pas !!! 2 : Bouclage normal boucle 1 boucle 2 cette chaîne non plus ne s'affichera pas !!! ..... ..... 10 : Bouclage normal boucle 1 boucle 2 cette chaîne non plus ne s'affichera pas !!!On remarque que le break, stop les deux boucles imbriquées mais l'execution continue et la chaîne s'affiche. L'instruction continue évite donc cela.
Consulter le lien






Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Vous pouvez soumettre un commentaire en remplissant le formulaire ci-dessous. Toutes les contributions font l'objet d'une étape de modération par notre équipe.
Le code HTML dans le commentaire sera affiché comme du texte, les adresses internet seront converties automatiquement.