Co to jest pętla do...while w PHP?
Pętla do...while wykonuje blok kodu co najmniej raz, a dopiero potem sprawdza warunek zakończenia. To odróżnia ją od pętli while, w której warunek jest sprawdzany przed pierwszym wykonaniem instrukcji.
Składnia
do {
// instrukcje
} while (warunek);
Najważniejsza cecha:
- kod w bloku do { ... } wykona się minimum 1 raz,
- po każdej iteracji sprawdzany jest warunek w while(...),
- jeśli warunek jest spełniony, pętla działa dalej.
Jak to działa krok po kroku?
Przykład:
$x = 1;
do {
echo $x;
$x++;
} while ($x <= 3);
Wynik:
- 1. iteracja: wypisze 1, potem $x staje się 2
- 2. iteracja: wypisze 2, potem $x staje się 3
- 3. iteracja: wypisze 3, potem $x staje się 4
- warunek $x <= 3 jest już fałszywy, więc pętla się kończy
Zastosowanie
Pętla do...while jest przydatna wtedy, gdy:
- kod ma wykonać się przynajmniej raz,
- użytkownik ma być pytany o dane aż do podania poprawnej wartości,
- trzeba najpierw wykonać operację, a dopiero potem sprawdzić warunek.
Typowy błąd na egzaminie
W zadaniach egzaminacyjnych często sprawdza się, czy zdający pamięta, że do...while:
- nie może wykonać się 0 razy,
- wykonuje się minimum raz, nawet gdy warunek od początku jest fałszywy.
Przykład:
$x = 10;
do {
echo "start";
} while ($x < 5);
Mimo że $x < 5 jest fałszywe, napis start zostanie wypisany raz.
Podsumowanie
do...while w PHP to pętla z warunkiem sprawdzanym po wykonaniu instrukcji. Przy analizie liczby iteracji trzeba śledzić zmiany zmiennych po każdej pętli i pamiętać, że pierwsze wykonanie następuje zawsze.