Pętla while wykonuje blok instrukcji tak długo, jak podany warunek ma wartość logiczną true. Warunek sprawdzany jest przed każdym wykonaniem ciała pętli, dlatego może się zdarzyć, że pętla nie wykona się ani razu.
Składnia
while (warunek) {
// instrukcje wykonywane w pętli
}
Przykład:
$x = 0;
while ($x < 5) {
echo $x;
$x++;
}
Pętla działa, dopóki $x jest mniejsze od 5. Po każdej iteracji zmienna $x jest zwiększana, dzięki czemu warunek w końcu stanie się fałszywy.
Warunek z przedziałem liczbowym
Jeśli pętla ma działać tylko dla wartości z przedziału (-2, 5), trzeba sprawdzić dwa warunki jednocześnie:
while (($x > -2) && ($x < 5)) {
// instrukcje
}
Oznacza to: $x jest większe od -2 i jednocześnie mniejsze od 5.
Typowy błąd
Użycie operatora || zamiast && zmienia znaczenie warunku. Operator || oznacza „lub”, więc wystarczy spełnienie jednego z warunków. Dla przedziału liczbowego zwykle potrzebne jest &&, ponieważ liczba musi spełniać oba ograniczenia naraz.