PHP Handbuch
Zurück | Kapitel 11. Kontroll-Strukturen | Nach vorne

# `do..while`

`Do..while`-Schleifen sind den `while`-Schleifen sehr ähnlich, ausser dass die Erfüllung des Ausdrucks am Ende jedes Durchlaufs geprüft wird (statt am Anfang). Der Hauptunterschied zu gewöhnlichen `while`-Schleifen ist, dass der erste Schleifen-Durchlauf bei `do..while` in jedem Fall statt findet, wogegen es bei `while`-Schleifen durchaus passieren kann, dass die Schleife nie durchlaufen wird, wenn die am Anfang zu prüfende Bedingung schon zu Beginn `FALSE` ist.

Es gibt nur eine Syntax für `do..while`-Schleifen:

    $i = 0;
    do {
        print $i;
    } while ($i>0);

Die obige Schleife wird genau einmal durchlaufen, da nach der ersten Wiederholung die Erfüllung der Bedingung geprüft wird. Da diese aber nicht erfüllt, also `FALSE` ist ($i ist nicht grösser als 0), wird die Schleifenausführung beendet.

Erfahrene C-Anwender kennen auch die Möglichkeit, Programm-Blöcke mit `do..while`(0) einzuschliessen und dann die `break` Anweisung zu benutzen. Der folgende Programm-Ausschnitt zeigt dies:

    do {
        if ($i < 5) {
            print "i ist nicht gross genug";
            break;
        }
        $i *= $factor;
        if ($i < $minimum_limit) {
            break;
        }
        print "i ist ok";

        ...process i...

    } while(0);

Es ist nicht weiter tragisch, wenn Sie dieses Beispiel nicht oder nur zum Teil verstehen. Sie können auch ohne dieses Feature effektive PHP-Programme und Skripte schreiben.

Zurück | Zum Anfang | Nach vorne
`while` | Nach oben | `for`