Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Loop-Lernen fünf: Wie kann man aus der Schleife ausbrechen? Kurze Analyse von 5 Methoden

PHP-Loop-Lernen fünf: Wie kann man aus der Schleife ausbrechen? Kurze Analyse von 5 Methoden

青灯夜游
青灯夜游Original
2021-08-02 14:55:1515937Durchsuche

Im vorherigen Artikel haben wir Ihnen verschiedene Schleifenkontrollstrukturen in PHP gezeigt (while-Schleife, do-while-Schleife, for-Schleife und foreach-Schleife) und die for-Schleifenanweisung und foreach vorgestellt Schleifenanweisung zum Durchlaufen des Arrays. Wenn Sie interessiert sind, können Sie auf den Link klicken, um ihn anzuzeigen. Ich hoffe, dass er für alle hilfreich ist.

Eine Schleifenanweisung kann wiederholt eine Operation ausführen, wenn die Bedingung erfüllt ist. Manchmal ist die Bedingung jedoch erfüllt, die Schleife ist jedoch noch nicht beendet. Zu diesem Zeitpunkt müssen Sie aus der Schleife springen. Wie kann man also in PHP aus der Schleife ausbrechen? Heute werde ich Ihnen fünf Möglichkeiten vorstellen, aus Schleifen auszubrechen: continue-Anweisung, break-Anweisung, goto-Anweisung, die()/exit()-Anweisung und return-Anweisung.

Methode 1: Verwenden Sie die continue-Anweisung

Die Funktion der continue-Anweisung besteht darin, aus dieser Schleife zu springen und dann die nächste Schleife auszuführen (den Code nach der continue-Anweisung abzubrechen und mit der nächsten Schleife fortzufahren).

Schauen wir uns das Codebeispiel unten an.

Beispiel 1: Alle geraden Zahlen zwischen 1 und 10 ausgeben (gerade Zahlen können durch 2 teilbar sein)

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

Analyse:

  • für ($i = 1; $i 703d3c2048aa9ba9c507260a3779a75d'

  • if($i % 2 != 0)Die Anweisung ist wird verwendet, um zu bestimmen$i kann gleichmäßig durch 2 geteilt werden. Wenn er nicht gleichmäßig geteilt werden kann, ist der Wert in () wahr und der continue;-Anweisung wird ausgeführt. Verwenden Sie im Schleifenkörper die Anweisung if($i % 2 != 0), um zu beurteilen, ob der Wert von $i gleichmäßig durch 2 geteilt werden kann. Verwenden Sie die Ausgabe „echo $ i“. Wenn der Wert von $i nicht gleichmäßig durch 2 geteilt werden kann, wird die Anweisung continue; ausgelöst, die aus dieser Schleife springt (ohne Ausgabe). ) und Ausführen der nächsten Schleife.

Ausgabeergebnis:

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

Methode 2: Break-Anweisung verwenden

Die Break-Anweisung wird verwendet, um aus der aktuellen Syntaxstruktur zu springen. Sie kann den Code des beenden Schleifenkörper und sofort aus der aktuellen Schleife springen, den Code nach der Schleife ausführen.

Der Unterschied zwischen break und continue besteht darin, dass die continue-Anweisung nur die aktuelle Schleife beendet, während die break-Anweisung die Ausführung der gesamten Schleife beendet.

Verwenden Sie den Code in Beispiel 1 oben und ersetzen Sie continue; durch break;. Was wird ausgegeben?

1

Die Antwort lautet:
Nichts ausgeben

. Warum passiert das? Lassen Sie es uns analysieren: Am Anfang der Forx-Schleife, $i=1, ist 1 kleiner als 10? Beginnen Sie dann natürlich mit der Ausführung der if($i % 2 != 0)-Anweisung im Schleifenkörper Kann 1 also durch 2 geteilt werden? Offensichtlich ist dies nicht möglich. Wenn also der Wert in () wahr ist, wird die „break;“-Anweisung in der if-Anweisung ausgeführt und springt direkt aus der gesamten Schleife heraus, und es besteht keine Möglichkeit zur Ausführung. echo $i.' &lt ;br>'"-Anweisung.

Methode 3: goto-Anweisung

Die Funktion von goto besteht darin, die Ausführung des Programms von der aktuellen Position zu einer beliebigen anderen Position zu überspringen. Der Zielort kann mit dem Zielnamen gefolgt von einem Doppelpunkt markiert werden (z. B. Name: ), und die Sprunganweisung lautet „Gehe zu“, gefolgt von der Markierung des Zielorts.

goto selbst hat nicht die Funktion, die Schleife zu beenden, aber seine Sprungposition ermöglicht es, es als Sprung aus der Schleife zu verwenden.

Schauen wir uns das Codebeispiel unten an.

Beispiel 2: Alle ungeraden Zahlen zwischen 1 und 10 ausgeben (ungerade Zahlen können nicht durch 2 teilbar sein)

<?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;;
}
?>
Ausgabe:
1

goto ist eigentlich nur ein Operator, und seine Verwendung unterliegt bestimmten Einschränkungen: der Zielposition des Sprungs Kann nur in derselben Datei und demselben Bereich liegen. Der

goto-Operator ist nur in PHP5.3 und höher gültig.

Methode 4: die()/exit()-Anweisung 🎜🎜🎜🎜Die beiden Namen „exit“ und „die“ verweisen auf dieselbe Funktion. 🎜🎜Die Rolle von die()/exit(): Beendet die Programmausführung und kann überall verwendet werden. 🎜🎜🎜Folgen Sie dem Code in Beispiel 3 oben, ersetzen Sie die goto-Anweisung durch die() und sehen Sie sich die Ausgabe an ein spezifischer Wert sein. Der Wert kann auch eine Zeichenfolge sein, oder Sie können keine Parameter eingeben. Wenn der Parameter eine Zeichenfolge ist, gibt PHP die Zeichenfolge direkt aus. Wenn der Parameter eine Ganzzahl ist (Bereich 0-254), wird dieser Parameter als Endzustand verwendet. 🎜🎜🎜🎜Methode 5: Return-Anweisung 🎜🎜🎜🎜Die Return-Anweisung wird verwendet, um einen Codeabschnitt zu beenden und einen Parameter zurückzugeben. 🎜🎜🎜Folgen Sie dem Code in Beispiel 3 oben, ersetzen Sie die die()-Anweisung durch die return-Anweisung und sehen Sie sich die Ausgabe an🎜🎜
<?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;;
}
?>
🎜Ausgabe: 🎜
1

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

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

推荐:PHP面试题大汇总(收藏)

Das obige ist der detaillierte Inhalt vonPHP-Loop-Lernen fünf: Wie kann man aus der Schleife ausbrechen? Kurze Analyse von 5 Methoden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn