Maison  >  Article  >  développement back-end  >  Les différences entre continuer, break, exit et méthodes pour sortir des boucles en PHP

Les différences entre continuer, break, exit et méthodes pour sortir des boucles en PHP

黄舟
黄舟original
2017-06-25 09:32:431241parcourir

Les structures de boucle en PHP incluent généralement boucle for, boucle while, do{} boucle while et boucle foreach. Quel que soit le type de boucle, sortez de la boucle. PHP Il existe à peu près les manières suivantes :

Code :

<?php

$i = 1;
while (true) { // 这里看上去这个循环会一直执行
    if ($i==2) {// 2跳过不显示
        $i++;
        continue;
    } else if ($i==5) {// 但到这里$i=5就跳出循循环了
        break;
    } else {
        echo $i . &#39;<br>&#39;;
    }
    $i++;
}
exit;
echo &#39;这里不输出&#39;;
?>

Résultat :

1
3
4

continuer

continue est utilisé dans une structure de boucle pour contrôler que le programme abandonne le code après l'instruction continue de cette boucle et passe à la boucle suivante. continue lui-même ne sort pas de la structure de la boucle, il abandonne simplement la boucle cette fois. Si continue est utilisé dans une structure sans boucle (comme une instruction if, instruction switch ), le programme fonctionnera mal.

Par exemple, dans le fragment de code PHP suivant :

<?php
for($i = 1;$i <= 100; $i++ ){
if($i % 3 == 0 || $i % 7 == 0){
continue;
}
& #160;  else{
echo”$i \n<br/>”;
}
}
?>

La fonction du fragment de code PHP est de sortir dans les 100, ce qui ne peut ni être utilisé par 7 Pour les nombres naturels qui sont divisibles mais non divisibles par 3, utilisez d'abord l'instruction conditionnelle if dans la boucle pour déterminer les nombres qui peuvent être divisibles, puis exécutez l'instruction continue pour entrer directement dans la boucle suivante ; L'instruction de sortie suivante ne sera pas exécutée.

break

break est utilisé dans les différentes boucles et instructions switch mentionnées ci-dessus. Sa fonction est de sortir de la structure grammaticale actuelle et d'exécuter les instructions suivantes. L'instruction break peut prendre un paramètre n, indiquant le nombre de niveaux à sortir de la boucle. Si vous souhaitez sortir de plusieurs boucles, vous pouvez utiliser n pour indiquer le nombre de niveaux à quitter. paramètre, la valeur par défaut est de sortir de la boucle actuelle.

Regardez l'exemple suivant d'imbrication de plusieurs boucles :

for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10;$j++){
$m = $i * $i + $j * $j;
echo”$m \n<br/>”;
if($m < 90 || $m > 190) {
break 2;
}
}
}

Ici, le break 2 est utilisé pour sortir de deux boucles. Vous pouvez l'essayer et en supprimer 2. obtenez ce qui suit Le résultat est complètement différent. Si aucun paramètre n'est utilisé, seule cette boucle sera sautée et la boucle de premier niveau continuera à s'exécuter.

goto

goto n'est en fait qu'un opérateur Comme dans d'autres langages, l'abus de goto n'est pas encouragé en PHP. L'abus de goto entraînera une grave baisse de lisibilité du programme. . La fonction de goto est de sauter l'exécution du programme de la position actuelle à n'importe quelle autre position. goto lui-même n'a pas pour fonction de terminer la boucle, mais sa position de saut lui permet d'être utilisé comme un saut hors de la boucle. Cependant, PHP5.3 et versions ultérieures ne prennent plus en charge goto, vous devriez donc essayer d'éviter d'utiliser goto.
Ce qui suit est un exemple d'utilisation de goto pour sortir de la boucle

for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) <= 29){
goto a;
}
echo “$i”;
}
a:
echo” this is the end”;

L'exemple utilise goto pour sortir de la boucle Cet exemple est utilisé pour détecter les nombres inférieurs à 1000. dont la racine carrée est supérieure à 29.

exit

exit est utilisé pour terminer l'exécution du programme. Il peut être utilisé n’importe où et n’a aucune signification pour sortir de la boucle. exit peut prendre un paramètre. Si le paramètre est String, PHP affichera directement la chaîne. Si le paramètre est un entier (la plage est de 0 à 254), ce paramètre sera utilisé comme état final.

<?php
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i \n<br/>”;
}
else{
exit;
}
}
echo”本行将不会被输出”;
?>

Dans l'exemple ci-dessus, l'exécution du code se termine directement dans la boucle. Cela entraînera la non-exécution du code suivant s'il se trouve dans une page Web php, même le code après la sortie. ne sera pas exécuté. Aucun code html ne sera généré.

return

l'instruction return est utilisée pour terminer un morceau de code et renvoyer un paramètre. Il peut être appelé depuis une fonction ou depuis un fichier inclus dans une instruction include() ou require(), ou il peut être appelé depuis le programme principal. S'il est appelé depuis une fonction, le programme se terminera immédiatement et renverra le message. paramètres , s'il est appelé à partir d'un fichier inclus dans l'instruction include() ou require(), l'exécution du programme reviendra immédiatement au programme qui a appelé le fichier et la valeur de retour sera utilisée comme valeur de retour de include(). ou require(). Et s'il est appelé dans le programme principal, alors le programme principal arrêtera immédiatement l'exécution

<?php
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i \n<br/>”;
}
else{
return;
}
}
echo”本行将不会被输出”;
?>

L'exemple ici a le même effet que l'utilisation de exit ci-dessus.

À la fin de la condition de boucle, elle sautera naturellement

C'est bien sûr le mieux à comprendre. Lorsque la boucle remplit la condition critique de la boucle, elle sortira d'elle-même. .

Ce qui précède est un bref résumé de plusieurs façons de sortir des boucles en PHP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn