KWALIFIKACJA INF3 - STYCZEŃ 2017

PYTANIE NR 31.
W języku PHP instrukcja foreach jest instrukcją
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
foreach w PHP to instrukcja pętli służąca do iterowania po elementach tablicy (oraz typowo po kolekcjach iterowalnych). Nie jest to instrukcja wyboru ani warunkowa. Dlatego poprawny opis wskazuje, że dotyczy elementów tablicy, a nie dowolnego typu zmiennej.

Pełne wyjaśnienie:

Instrukcja foreach w PHP należy do grupy instrukcji pętli, czyli konstrukcji umożliwiających wielokrotne wykonanie bloku kodu. Jej typowym zastosowaniem jest iteracja po elementach tablicy: pętla "przechodzi" kolejno przez każdy element, udostępniając jego wartość (a często także klucz) w zmiennej pętli.

Odpowiedź "pętli, wyłącznie dla elementów tablicy." oddaje istotę działania foreach w kontekście podstaw egzaminacyjnych: foreach nie służy do sprawdzania warunków (to rola instrukcji warunkowych) ani do rozgałęzień (to rola instrukcji wyboru). Jej zadaniem jest przejście po elementach kolekcji danych.

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • "pętli, niezależnie od typu zmiennej." sugeruje, że foreach można zastosować do dowolnej zmiennej. W praktyce foreach jest przeznaczone do iteracji po danych zorganizowanych jako kolekcja (najczęściej tablica), a nie do "każdego typu" w sensie ogólnym (np. pojedynczej liczby).
  • "wyboru, dla elementów tablicy." błędnie klasyfikuje foreach jako instrukcję wyboru. Instrukcje wyboru kojarzą się z rozgałęzieniem ścieżek wykonania (np. wybór jednej z gałęzi), a foreach wykonuje blok kodu wielokrotnie dla kolejnych elementów.
  • "warunkową, niezależnie od typu zmiennej." miesza pojęcia: instrukcje warunkowe służą do podejmowania decyzji na podstawie warunku logicznego, a foreach jest pętlą iteracyjną. Dodatkowo ponownie pojawia się zbyt szerokie uogólnienie "niezależnie od typu zmiennej".

Wskazówka egzaminacyjna: jeśli w treści zadania pojawia się nazwa konstrukcji pętli (for, while, do...while, foreach), warto od razu powiązać ją z cechą kluczową: pętla = powtarzanie. Dla foreach najczęstsze skojarzenie to "dla każdego elementu tablicy", czyli iteracja po kolekcji danych.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
foreach to instrukcja pętli w PHP służąca do przechodzenia po elementach tablicy (kolekcji). W każdej iteracji udostępnia bieżącą wartość (i opcjonalnie klucz), aby wykonać na niej operacje, np. wyświetlenie lub przetworzenie danych.
W tablicy asocjacyjnej foreach może zwracać zarówno klucz, jak i wartość. Dzięki temu łatwo przetwarzasz pary typu "nazwa pola → wartość", np. budując listę, tabelę lub mapując dane do widoku.
Instrukcja warunkowa podejmuje decyzję na podstawie wyrażenia logicznego (prawda/fałsz). foreach nie służy do wyboru gałęzi, tylko do powtarzania bloku kodu dla kolejnych elementów tablicy, czyli do iteracji.
Często tak, gdy przetwarzasz całą tablicę element po elemencie. for bywa wygodniejszy, gdy potrzebujesz indeksu liczbowego, kroków co N lub złożonego warunku zakończenia. foreach jest zwykle czytelniejszy przy zwykłej iteracji po tablicy.
Typowe pomyłki to: mylenie foreach z instrukcją wyboru, uznawanie że działa na "każdej" zmiennej, oraz brak rozróżnienia tablicy indeksowanej i asocjacyjnej. Pomaga zapamiętać: foreach = "dla każdego elementu tablicy".
Oznacza to, że pętla wykonuje się tyle razy, ile jest elementów w tablicy. W każdej iteracji pobierasz kolejny element i możesz go przetworzyć. Dzięki temu nie musisz ręcznie odwoływać się do indeksów i pilnować licznika.
foreach jest lepszy, gdy masz gotową tablicę danych i chcesz ją przejść w całości. while częściej stosuje się, gdy warunek zakończenia nie wynika wprost z liczby elementów, np. czytanie danych aż do spełnienia warunku lub pobieranie kolejnych wyników.
Jeśli w opisie pojawia się przetwarzanie listy elementów, rekordów, wyników zapytania lub tablicy (np. wyświetlenie wszystkich pozycji), to zwykle właściwą konstrukcją jest foreach. Kluczowy trop: "dla każdego elementu" lub "dla wszystkich elementów".
W ujęciu podstawowym (typowym dla testów) foreach jest przeznaczony do iteracji po tablicach. W praktyce PHP pozwala iterować także po obiektach spełniających wymagania iterowalności. Na egzaminie najbezpieczniej wiązać foreach z tablicą.
Wypisz i porównaj zastosowania: for, while, do...while, foreach. Zrób krótkie ćwiczenia na tablicach indeksowanych i asocjacyjnych oraz opisz słownie, kiedy użyć każdej pętli. Na testach najczęściej sprawdza się dopasowanie pętli do problemu.
info

Około 71% zdających odpowiada poprawnie na to pytanie. średnio łatwe

Według specjalistów z branży: "foreach w PHP to instrukcja pętli służąca do iterowania po elementach tablicy (oraz typowo po kolekcjach iterowalnych)."

Źródła:

  • PHP Manual: foreach — https://www.php.net/manual/en/control-structures.foreach.php (dostęp: 2026-03-02)
  • PHP Manual: Control Structures (rozdział o instrukcjach sterujących) — https://www.php.net/manual/en/language.control-structures.php (dostęp: 2026-03-02)
  • PHP Manual: Arrays — https://www.php.net/manual/en/language.types.array.php (dostęp: 2026-03-02)

Materiały:

  • Oficjalna dokumentacja PHP: rozdział o instrukcji foreach
  • Kurs podstaw PHP obejmujący pętle i tablice (materiały szkolne/kwalifikacyjne)
  • Zadania praktyczne: iteracja po tablicach indeksowanych i asocjacyjnych z użyciem foreach

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego