Heim > Artikel > Backend-Entwicklung > Wie schreibe ich die for-Anweisung in PHP? Detaillierte Erklärung der Verwendung der PHP-for-Schleifenanweisung
Die Bedeutung von for in PHP
Die for-Schleife ist die komplexeste Schleifenstruktur in PHP. Sein Verhalten ähnelt dem der C-Sprache. Was in PHP verwendet wird, besteht darin, den gleichen Codesatz mehrmals auszuführen
for-Schleife ist nur ein wenig mehr Code, während Schleifen hinzugefügt werden. Die häufigsten Aufgaben einer Schleife sind:
Setzen Sie den Anfangswert einiger Zählervariablen.
Bitte überprüfen Sie, ob die bedingte Anweisung korrekt ist.
Codeschleife in der Ausführung.
Erhöhen Sie den Schleifenzähler am Ende jeder Iteration.
Mit der for-Schleife können Sie diese Schritte mit einer einfachen Codezeile definieren. Es scheint eine seltsame Form zu haben, achten Sie also unbedingt auf die Grammatik!
Wie schreibe ich die for-Anweisung in PHP?
Die Syntax der for-Schleife lautet:
for (expr1; expr2; expr3)
Anweisung
Nein. Ein Ausdruck (expr1) wird unbedingt einmal ausgewertet, bevor die Schleife beginnt.
expr2 wird vor jeder Schleife ausgewertet. Wenn der Wert TRUE ist, wird die Schleife fortgesetzt und die verschachtelte Schleifenanweisung ausgeführt. Wenn der Wert FALSE ist, wird die Schleife beendet.
expr3 wird nach jeder Schleife ausgewertet (ausgeführt).
Jeder Ausdruck kann leer sein oder mehrere durch Kommas getrennte Ausdrücke enthalten. Im Ausdruck expr2 werden alle durch Kommas getrennten Ausdrücke ausgewertet, es wird jedoch nur das letzte Ergebnis übernommen. Ein leerer Ausdruck2 bedeutet, dass die Schleife auf unbestimmte Zeit fortgesetzt wird (wie C betrachtet PHP seinen Wert als TRUE). Dies ist möglicherweise nicht so nutzlos, wie Sie denken, da Sie häufig eine break-Anweisung verwenden möchten, um die Schleife zu beenden, anstatt die Wahrheitsprüfung des for-Ausdrucks zu verwenden.
Ein einfaches Beispiel für PHP-for-Loop-Anweisung 1
Der Code lautet wie folgt:
FOR ($i = 0; $i <= 2; $i++) { print "value is now " . $i . "<br>"; }
Ausgabewert
Wert ist jetzt 0
Wert ist jetzt 1
Wert ist jetzt 2
In der ersten Schleife ist $i=0, was bedeutet, dass der Ausdruck ($i<= 2) wahr ist. Wenn die Druckanweisung ausgeführt wird, wird daher $i um 1 erhöht und wird zu 1.
In der zweiten Schleife ist $ = 1, was bedeutet, dass der Ausdruck ($i<= 2) wahr ist. Wenn die Druckanweisung ausgeführt wird, wird daher $i um 1 erhöht und wird zu 2.
In der dritten Iteration ist $i= 2, was bedeutet, dass der Ausdruck ($i<= 2) wahr ist. Wenn daher die Druckanweisung ausgeführt wird, wird $i inkrementiert und wird zu 1 3.
In der vierten Iteration ist $i= 3, was bedeutet, dass der Ausdruck ($i<= 2) falsch ist. Daher führt PHP die Schleife nicht aus und führt die Druckanweisung nicht aus.
Einfaches Beispiel zwei einer PHP-for-Loop-Anweisung
Der Code lautet wie folgt:
$brush_price = 5; echo "<table border="1" align="center">"; echo "<tr><th>Quantity</th>"; echo "<th>Price</th></tr>"; for ( $counter = 10; $counter <= 100; $counter += 10) { echo "<tr><td>"; echo $counter; echo "</td><td>"; echo $brush_price * $counter; echo "</td></tr>"; } echo "</table>";
Ausgabewert
Mengenpreis
10 50
20 100
30 150
40 200
50 250
60 300
70 350
80 400
90 450
100 500
Sie können sich auf die folgenden Beispiele beziehen, sie alle zeigen die Zahlen 1 bis 10:
Der Code lautet wie folgt:
<?php /* example 1 */ for ($i = 1; $i <= 10; $i++) { echo $i; } /* example 2 */ for ($i = 1; ; $i++) { if ($i > 10) { break; } echo $i; } /* example 3 */ $i = 1; for (;;) { if ($i > 10) { break; } echo $i; $i++; } /* example 4 */ for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++); ?>
Natürlich sieht das erste Beispiel so aus am normalsten (oder das vierte), aber Benutzer können es in vielen Situationen praktisch finden, leere Ausdrücke in for-Schleifen zu verwenden.
PHP unterstützt auch eine alternative Syntax für for-Schleifen mit Doppelpunkten.
Der Code lautet wie folgt:
for (expr1; expr2; expr3): statement; ... endfor;
Wir müssen häufig das folgende Array durchlaufen:
Der Code lautet wie folgt:
<?php /* * 我们想要在遍历的过程中改变以下数组中某些元素的值 */ $people = Array( Array('name' => 'Kalle', 'salt' => 856412), Array('name' => 'Pierre', 'salt' => 215863) ); for($i = 0; $i < sizeof($people); ++$i) { $people[$i]['salt'] = rand(000000, 999999); } ?>
Das Problem mit dem obigen Code besteht darin, dass der zweite Ausdruck von for dazu führt, dass der Code sehr langsam ausgeführt wird, da die Länge des Arrays jedes Mal berechnet werden muss ist geloopt. Da die Länge des Arrays immer gleich bleibt, können wir eine Zwischenvariable verwenden, um die Länge des Arrays zu speichern, und diese Variable dann als zweiten Ausdruck der for-Schleife verwenden. Auf diese Weise kann der Wert der Variablen direkt während der Schleife verwendet werden, ohne jedes Mal neu berechnen zu müssen. Wie folgt:
Der Code lautet wie folgt:
<?php $people = Array( Array('name' => 'Kalle', 'salt' => 856412), Array('name' => 'Pierre', 'salt' => 215863) ); for($i = 0, $size = sizeof($people); $i < $size; ++$i) { $people[$i]['salt'] = rand(000000, 999999); } ?>
Das obige ist der detaillierte Inhalt vonWie schreibe ich die for-Anweisung in PHP? Detaillierte Erklärung der Verwendung der PHP-for-Schleifenanweisung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!