for
(PHP 4, PHP 5, PHP 7)
Pętle for są najbardziej złożonymi pętlami w PHP.
Zachowuja się jak jej odpowiedniki w C. Składnią pętli
for jest:
Pierwsze wyrażenie (wyrażenie1) jest
przatwarzane (wykonywane) jeden raz na początku
pętli.
Na początku każdej iteracji jest wykonywane
wyrażenie2. Jeżeli zwraca ono
TRUE
, to pętla jest kontynuowana, a zagnieżdżone w
niej instrukcje są wykonywane. Jeżeli wynikiem tego wyrażenia
jest FALSE
, wykonywanie pętli zostaje zakończone.
Na końcu każdej iteracji wykonywane jest wyrażenie3.
Każde z wyrażeń może być puste lub zawierać wiele wyrażeń
oddzielonych przecinkami. W wyrażeniu2 wszystkie
operacje oddzielone przecinkiem są wykonywane, ale wynik jest brany
z ostatniej części.
Puste wyrażenie2 oznacza, że pętla powinna być
wykonywana bez końca (PHP rozumie to tak jak
TRUE
, jak w C). To może nie być tak bezużyteczne, jak mogłeś
pomyśleć, ponieważ często możesz chcieć zakończyć pętlę
używając wyrażenia break
zamiast sprawdzania prawdziwości wyrażenia for.
Spójrz na poniższe przykłady. Wszystkie wyświetlają liczby od
1 do 10:
Oczywiście pierwszy przykład wydaje się najlepszy (lub
ewentualnie czwarty), ale można zobaczyć, że możliwość użycia
pustych wyrażeń w for jest przydatne w
niektórych sytuacjach.
PHP wspiera także alternatywną składnię z dwukropkiem dla
pętli for.
Często użytkownicy iterują przez całą tablicę, jak w
przykładzie poniżej.
Powyższy kod może być wolny, ponieważ rozmiar tablicy jest pobierany
przy każdej iteracji. Ponieważ rozmiar tablicy nigdy się nie zmienia, pętla
może być łatwo zoptymalizowana dzięki użyciu wewnętrznej zmiennej do zapisania
rozmiaru, zamiast ciągłego wykonywania count():