Назад к вопросам
Junior — Middle
109
Объясните, что представляет собой генератор в PHP и как он работает.
Компании, где спрашивали
LaTech
MACRO
Ответ от нейросети
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, генерируя их по одному при каждой итерации.