Przeanalizuj zachowanie generatora z instrukcją yield. Co zostanie wypisane w wyniku iteracji pętli po strukturze generatora?
Przeanalizuj zachowanie generatora z instrukcją yield. Co zostanie wypisane w wyniku iteracji pętli po strukturze generatora?
<?php
function mojGenerator() {
yield 1;
yield 2;
return 3;
}
$gen = mojGenerator();
foreach ($gen as $wartosc) {
echo $wartosc;
}
?>Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: B (12)
Ponieważ pętla foreach operująca na obiekcie generatora odczytuje wyłącznie wartości wysyłane strumieniowo przez instrukcje yield. Końcowa instrukcja return 3 służy jedynie do określenia stanu końcowego wykonania generatora (można ją pobrać metodą getReturn()), ale jest całkowicie pomijana przez pętlę foreach.
Opcja A jest niepoprawna, ponieważ zakłada błędne dołączenie wartości zwracanej przez return do iteracji. Opcja C pomija elementy generowane przez słowo kluczowe yield. Opcja D jest niepoprawna, ponieważ generatory implementują interfejs Iterator i są natywnie obsługiwane przez pętlę foreach.
Dlaczego pozostałe opcje są nieprawidłowe?
- A: Opcja
123nie odpowiada prawidłowemu rozwiązaniu problemu opisanego w pytaniu. - C: Opcja
3nie odpowiada prawidłowemu rozwiązaniu problemu opisanego w pytaniu. - D: Opcja
Kod wygeneruje blad braku definicji tablicynie odpowiada prawidłowemu rozwiązaniu problemu opisanego w pytaniu.
Chcesz poćwiczyć całą kwalifikację INF.03?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Abstrakcja, Klasy abstrakcyjne i InterfejsyWzorce projektowe OOP służące do definiowania kontraktów i szablonów zachowań bez dostarczania pełnej implementacji.
- Metody tablicowe w JS (push, pop, map, filter, forEach, splice)Funkcje wbudowane w prototyp tablic służące do mutowania zawartości, transformacji, filtrowania i iteracji po elementach.
- Metody przesyłania danych ($_GET vs $_POST)Podstawowe metody protokołu HTTP używane do przekazywania danych z formularzy HTML do skryptów backendowych.
Podobne pytania z działu „Php skladnia i struktury”
Ten sam obszar materiału z kwalifikacji INF.03. W całej bazie znajdziesz 165 pytań z tego działu.
- #39
Fragment kodu prezentuje składnię języka
- #42
Który język skryptowy ogólnego przeznaczenia należy wykorzystać do tworzenia aplikacji WWW, zagnieżdżanych w języku HTML i uruchamianych po stronie serwera?
- #69
Która z wymienionych funkcji sortowania wykorzystywana w języku PHP sortuje tablicę asocjacyjną według indeksów
- #73
Instrukcja języka PHP tworząca obiekt pkt dla zdefiniowanej w ramce klasy ma postać
- #74
Wskaż wynik wykonania skryptu napisanego w języku PHP