PHP - for

Syntax

for([Startanweisung]; [Abbruchbedingung]; [Iteration]) {
zu wiederholender Code
}

Erklärung

Mit der Funktion for läßt sich ein Zählschleife bilden, die trotzdem über eine Abbruchbedingung verfügen kann. Die Funktion verfügt insgesamt über drei Parameter (Startanweisung, Abbruchbedingung und Iteration), die alle optional sind und durch ein Semikolon voneinander getrennt werden. Die Parameter müssen von runden Klammern eingefasst sein, der zu wiederholende Code -sofern dieser sich über mehrere Zeilen erstreckt- von geschweiften Klammern.

Der Parameter "Startanweisung" enthält Anweisungen, die nur vor dem ersten Durchlaufen der Schleife ausgeführt werden. Regelmäßig wird hier die Zählvariable gesetzt (z. Bsp. $i=0). An dieser Stelle können auch mehrere Anweisungen gegeben werden, indem diese durch ein Komma getrennt werden (z. Bsp. $i=0, $schleife=true). Wird der Parameter "Startanweisung" weggelassen -z. Bsp. "for(;Abbruchbedingung;Iteration)..." -, so werden beim ersten Schleifendurchlauf keinerlei Anweisungen durchgeführt.

Der Parameter "Abbruchbedingung" wird vor jedem einzelnen Schleifendurchlauf geprüft. Die Bedingung wird mit Vergleichsoperatoren formuliert (z. Bsp. $i<100). Wenn diese Bedingung erfüllt (bzw. wahr) ist, wird der "zu wiederholende Code" ein weiteres Mal ausgeführt, wenn die Bedingung nicht erfüllt (bzw. unwahr) ist, wird die Schleife beendet, d.h. der "zu wiederholende Code" wird übersprungen und der sich anschließende Code ausgeführt.

Die "Abbruchbedingung" kann auch mehrere Bedingungen enthalten, die durch ein Komma getrennt werden müssen (z Bsp. $i<100, $schleife=true). Die Schleife wird dann nur fortgeführt, wenn alle Bedingungen erfüllt sind. Ebenso kann die Abbruchbedingung ganz wegfallen -z. Bsp. "for(Startanweisung; ;Iteration)..." - in diesem Fall wird die Schleife auf jeden Fall wiederholt, so daß zur Vermeidung einer Endlosschleife innerhalb des zu wiederholenden Codes mit break für ein Verlassen der Schleife gesorgt werden muß.

Der Parameter "Iteration" enthält Anweisungen, die am Ende jeden Durchlaufs des zu wiederholenden Codes ausgeführt werden. Regelmäßig wird hier die Zählvariable verändert (z. Bsp. $i=$i+1 oder eleganter $i++). Auch hier können mehrere, durch Kommas getrennte Anweisungen stehen (siehe Beispiel 2) oder der Parameter ganz weggelassen werden.

Die Schleife kann jederzeit auch vorzeitig durch die Funktion break verlassen werden. Durch die Verwendung von continue kann jederzeit innerhalb des "zu wiederholenden Codes" der Test der "Abbruchbedingung" und die Ausführung der Anweisungen in "Iteration" erzwungen werden.

Vergleiche auch continue, break

Beispiel

<?php

for($i=0; $i <= 10; $i++) {

 echo "$i, ";

}

?>

Ergebnis:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,

Beispiel 2

<?php

for($i=0; $i <= 10; print $i, $i++);

?>

Ergebnis:

012345678910

zurück: PHP - Kontrollstrukturen

Ergänzung? Fehler? Schreib uns an team@phpbox.de
Du findest phpbox.de nützlich? Wir freuen uns über einen Link auf phpbox.de

PHP-Bücher bei Amazon