====== Schleifen in PHP ====== Wie in jeder anderen Programmiersprache auch bietet PHP die Möglichkeit, Codeteile durch den Einsatz von Schleifen mehrfach auszuführen. Hierfür stehen die folgenden Schleifen zur Verfügung: ===== 1. Die foreach-Schleife ===== Mit der foreach-Schleife kann man durch Arrays und Objekte iterieren. Wenn das Array leer ist wird die foreach-Anweisung nicht ausgeführt. Da in diesem Falle auch kein Fehler geworfen wird ist eine zusätzliche Überprüfung des Arrays beispielsweise mit if( Count( $Digits ) > 1 ) nicht notwendig. Allerdings sollte sichergestellt sein, dass es sich wirklich um einen Parameter vom Dateityp "Array" oder "object" handelt. Andernfalls wird ein PHP-Fehler geworfen. $digits = [0, 1, 2, 3, 4]; if( is_array( $digits ) ) { foreach( $digits as $digit ) { echo $digit, " "; } } ---- ===== 2. Die for-Schleife ===== Die for-Schleife besteht aus 3 Teilen: * Zuweisung * Bedingung * Schleifenanweisung Auch diese Schleife läuft nur durch, solange die Bedingung WAHR ist. for( $i = 0; $i < 5; $i++ ) { echo $i, " "; } ---- ===== 3. Die while-Schleife ===== Bei der while-Schleife wird vor der Durchführung der Anweisung die Durchführbedingung geprüft. Die Schleife läuft nur durch, solange die Bedingung WAHR ist. **Beispiel:** $i = 0; while( $i < 5 ) { echo $i++, " "; } ---- ===== 4. Die do-while-Schleife ===== Da bei der while-Schleife die Durchführbedingung erst am Ende überprüft wird, läuft sie mindestens einmal durch. Auch diese Schleife läuft nur durch, solange die Bedingung WAHR ist. $i = 0; do { echo $i++, " "; } while ( $i < 5 ); ---- ===== Ergebnis der oben aufgeführten 4 Schleifen ===== Das Ergebnis ist bei allen 4 Beispielen das gleiche: 0 1 2 3 4 ---- ===== Vorzeitiger Abbruch von Schleifen in PHP ===== Es gibt 3 Anweisungen, mit denen die Durchführung der oben genannten Schleifen vorzeitig abgebrochen werden können: * continue: Der aktuelle Schleifenvorgang wird abgebrochen und die Schleife wird neu aufgerufen * break: Die aktuelle Schleife wird komplett abgebrochen * return (nur innerhalb von Funktionen) Die gesamte Funktion wird abgebrochen. Somit wird die Schleife ebenfalls nicht mehr weiter ausgeführt.