Sobes.tech
Назад к вопросам
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, генерируя их по одному при каждой итерации.