Back to questions
Junior — Middle
108
Объясните, что представляет собой генератор в PHP и как он работает.
Companies where asked
LaTech
MACRO
Answer from AI
sobes.tech AI
Генератор в PHP — это специальный вид итератора, который позволяет создавать последовательность значений по одному, не сохраняя всю последовательность в памяти. Генераторы реализуются с помощью ключевого слова yield внутри функции.
Когда функция-генератор вызывается, она возвращает объект генератора, который можно итерировать. При каждой итерации выполнение функции продолжается с места последнего yield, возвращая новое значение.
Это удобно для работы с большими наборами данных или бесконечными последовательностями, так как экономит память и упрощает код.
Пример генератора в PHP:
function numbers() {
for ($i = 0; $i < 5; $i++) {
yield $i;
}
}
foreach (numbers() as $num) {
echo $num . "\n";
}
Этот код выведет числа от 0 до 4, генерируя их по одному при каждой итерации.