Maison >développement back-end >Problème PHP >Cinquième apprentissage de la boucle PHP : comment sortir de la boucle ? Brève analyse de 5 méthodes

Cinquième apprentissage de la boucle PHP : comment sortir de la boucle ? Brève analyse de 5 méthodes

青灯夜游
青灯夜游original
2021-08-02 14:55:1516101parcourir

Dans l'article précédent, nous vous avons amené à apprendre plusieurs structures de contrôle de boucle en PHP (boucle while, ​​boucle do-while, ​​boucle for et boucle foreach), et avons introduit l'instruction de boucle for et le foreach instruction de boucle pour parcourir le tableau. Si vous êtes intéressé, vous pouvez cliquer sur le lien pour le voir. J'espère que cela sera utile à tout le monde !

Une instruction de boucle peut effectuer une opération à plusieurs reprises lorsque la condition est remplie, mais parfois la condition a été remplie mais la boucle n'est pas encore terminée. À ce stade, vous devez sortir de la boucle. Alors comment sortir de la boucle en PHP ? Aujourd'hui, je vais partager avec vous 5 façons de sortir des boucles : l'instruction continue, l'instruction break, l'instruction goto, l'instruction die()/exit() et l'instruction return.

Méthode 1 : utilisez l'instruction continue

La fonction de l'instruction continue est de sortir de cette boucle puis d'exécuter la boucle suivante (abandonner le code après l'instruction continue et passer à la boucle suivante).

Jetons un coup d'œil à l'exemple de code ci-dessous.

Exemple 1 : Afficher tous les nombres pairs entre 1 et 10 (les nombres pairs peuvent être divisibles par 2)

<?php
    for ($i = 1; $i <= 10; $i++) {
        if($i % 2 != 0) {
            continue;
        }
        echo $i.&#39; <br>&#39;;
    }
?>

Analyse :

  • pour ($i = 1; $i 1fee2f8abc8c9475a57f5985dbca62ea'

  • if($i % 2 != 0)L'instruction est utilisé pour déterminer$i peut être divisée également par 2. Si elle ne peut pas être divisée également, alors la valeur dans () est vraie et continue ; sera exécutée. Dans le corps de la boucle, utilisez l'instruction if($i % 2 != 0) pour porter un jugement Si la valeur de $i peut être divisée uniformément par 2, utilisez la sortie "echo $ i" ; si la valeur de $i ne peut pas être divisée également par 2, l'instruction continue; est déclenchée, sortant de cette boucle (sans sortie ), et exécuter la boucle suivante.

Résultat de sortie :

<?php
for ($i = 1; $i <= 10; $i++) {
    if($i % 2 == 0) {
        goto a;
    }
    echo $i.&#39; <br>&#39;;
}
a:
?>

Méthode 2 : Utiliser l'instruction break

L'instruction break est utilisée pour sortir de la structure syntaxique actuelle. Elle peut terminer le code du. corps de la boucle et sortez immédiatement de la boucle actuelle, exécutez le code après la boucle.

La différence entre break et continue est que l'instruction continue termine uniquement la boucle en cours, tandis que l'instruction break termine l'exécution de la boucle entière.

Utilisez le code de l'exemple 1 ci-dessus et remplacez continue; par break;. Qu'est-ce qui sera généré ?

1

La réponse est :
Ne produit rien

. Pourquoi cela se produit-il ? Analysons-le : Au début de la boucle forx, $i=1, est-ce que 1 est inférieur à 10 ? Bien sûr, commencez ensuite à exécuter l'instruction if($i % 2 != 0) dans le corps de la boucle Alors, 1 peut-il être divisé par 2 ? Évidemment, ce n'est pas le cas, donc si la valeur de () est vraie, alors l'instruction "break;" dans if est exécutée, sortant directement de la boucle entière, et il n'y a aucune chance d'exécuter " echo $i.' &lt ;br>'".

Méthode 3 : instruction goto

La fonction de goto est de sauter l'exécution du programme de la position actuelle à n'importe quelle autre position. L'emplacement cible peut être marqué avec le nom de la cible suivi de deux points (par exemple nom : ), et l'instruction de saut est goto suivie de la marque de l'emplacement cible.

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.

Jetons un coup d'œil à l'exemple de code ci-dessous.

Exemple 2 : Afficher tous les nombres impairs entre 1 et 10 (les nombres impairs ne peuvent pas être divisibles par 2)

<?php
header("Content-type:text/html;charset=utf-8");
for ($i = 1; $i <= 10; $i++) {
    if($i % 2 == 0) {
        die();
    }
    echo $i.&#39; <br>&#39;;
}
?>
Sortie :
1

goto n'est en fait qu'un opérateur, et son utilisation a certaines restrictions : la position cible du saut Ne peut être que dans le même fichier et la même portée. L'opérateur

goto n'est valable qu'en PHP5.3 et supérieur.

Méthode 4 : instruction die()/exit() 🎜🎜🎜🎜Les deux noms exit et die pointent vers la même fonction. 🎜🎜Le rôle de die()/exit() : pour terminer l'exécution du programme et peut être utilisé n'importe où. 🎜🎜🎜Suivez le code de l'exemple 3 ci-dessus, remplacez l'instruction goto par die() et regardez le résultat🎜🎜🎜
<?php
header("Content-type:text/html;charset=utf-8");
for ($i = 1; $i <= 10; $i++) {
    if($i % 2 == 0) {
        return;
    }
    echo $i.&#39; <br>&#39;;
}
?>
🎜Output : 🎜
1
🎜die()/exit() n'accepte qu'un seul paramètre, qui peut être spécifique La valeur peut également être une chaîne, ou vous ne pouvez saisir aucun paramètre. Si le paramètre est une chaîne, PHP affichera la chaîne directement. Si le paramètre est un entier (la plage est comprise entre 0 et 254), ce paramètre sera utilisé comme état final. 🎜🎜🎜🎜Méthode 5 : instruction return 🎜🎜🎜🎜L'instruction return est utilisée pour terminer un morceau de code et renvoyer un paramètre. 🎜🎜🎜Suivez le code de l'exemple 3 ci-dessus, remplacez l'instruction die() par l'instruction return et regardez le résultat🎜🎜rrreee🎜Sortie : 🎜
1

return语句可以在一个函数里调用,也可以从一个include()或者require()语句包含的文件里来调用,也可以是在主程序里调用。

好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

推荐: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
Article précédent:Apprenez à jouer à $_SERVERArticle suivant:Apprenez à jouer à $_SERVER