Lekcja 7: Powtarzanie Czynności (Pętle for i while)

Pętle pozwalają na wielokrotne wykonywanie tego samego bloku kodu, dopóki określony warunek jest spełniony. To niezwykle potężne narzędzie, które oszczędza mnóstwo czasu i miejsca. Poznamy dwa najważniejsze rodzaje pętli.

1. Pętla while (dopóki)

Pętla while jest najprostszą w koncepcji. Wykonuje kod w klamrach {} tak długo, dopóki warunek w nawiasach jest prawdziwy (true).

Schemat działania:

  1. Inicjalizacja: Stwórz zmienną, która będzie licznikiem (przed pętlą).
  2. Warunek: Sprawdź warunek na początku każdego „okrążenia”.
  3. Aktualizacja: Zmień wartość licznika wewnątrz pętli.

OSTRZEŻENIE: Jeśli zapomnisz o kroku 3 (aktualizacji), warunek zawsze będzie prawdziwy i stworzysz pętlę nieskończoną, która zawiesi Twój program (i serwer)!

Składnia: while (warunek) { // kod do wykonania }

Przykład: Wypiszmy liczby od 1 do 5. Stwórz plik petle.php.

<?php

echo "<h2>Pętla while</h2>";

$licznik = 1; // 1. Inicjalizacja

while ($licznik <= 5) { // 2. Warunek
    echo "Liczba to: $licznik <br>";
    $licznik++; // 3. Aktualizacja (to samo co $licznik = $licznik + 1)
}

?>

Jak to działa?

  1. $licznik ma wartość 1. Warunek 1 <= 5 jest prawdziwy, więc kod się wykonuje. Wyświetla „Liczba to: 1” i zwiększa $licznik do 2.
  2. $licznik ma wartość 2. Warunek 2 <= 5 jest prawdziwy. Wyświetla „Liczba to: 2” i zwiększa $licznik do 3.
  3. …i tak dalej, aż $licznik osiągnie wartość 6.
  4. $licznik ma wartość 6. Warunek 6 <= 5 jest fałszywy, więc pętla kończy swoje działanie.

2. Pętla for (dla)

Pętla for jest idealna, gdy dokładnie wiesz, ile razy chcesz powtórzyć daną czynność. Jest bardziej zwarta niż while, ponieważ cała logika sterująca (inicjalizacja, warunek i aktualizacja) znajduje się w jednej linijce.

Składnia: for (inicjalizacja; warunek; aktualizacja) { // kod do wykonania }

Przykład: Zróbmy to samo, co w przykładzie z while – wypiszmy liczby od 1 do 5.

<?php

echo "<h2>Pętla for</h2>";

for ($i = 1; $i <= 5; $i++) {
    echo "Liczba to: $i <br>";
}

?>

Jak widzisz, wynik jest identyczny, ale zapis jest znacznie krótszy. Zmienną licznika w pętli for tradycyjnie nazywa się $i (od iterator lub index).

Praktyczny przykład: Stwórzmy listę rozwijaną HTML z latami od 2020 do 2025.

<?php

echo "<select>";
for ($rok = 2020; $rok <= 2025; $rok++) {
    echo "<option value='$rok'>$rok</option>";
}
echo "</select>";

?>

Wyobraź sobie robienie tego ręcznie! Pętle to potęga.

3. Sterowanie pętlą: break i continue

Czasami chcemy mieć większą kontrolę nad działaniem pętli.

  • break – natychmiast przerywa i kończy działanie pętli.
  • continueprzerywa bieżące „okrążenie” i przechodzi do następnego.

Przykład:

<?php

echo "<h2>Break i Continue</h2>";

for ($i = 1; $i <= 10; $i++) {
    if ($i === 3) {
        continue; // Pomiń liczbę 3
    }
    if ($i === 8) {
        break; // Zakończ pętlę, gdy dojdziesz do 8
    }
    echo "$i ";
}
// Wynik: 1 2 4 5 6 7

?>

Podsumowanie

Opanowałeś właśnie pętle – drugi, obok instrukcji warunkowych, filar logiki programowania. Wiesz już, jak automatyzować powtarzalne zadania.

  • Używaj pętli while, gdy nie wiesz dokładnie, ile będzie powtórzeń, ale znasz warunek zakończenia.
  • Używaj pętli for, gdy z góry wiesz, ile razy kod ma się wykonać.
Przewijanie do góry