iterator_to_array
Превращает итератор или генератор в массив.
Синтаксис
iterator_to_array(iterable $iterator, bool $preserve_keys = true): arrayПараметры
| Параметр | Тип | Описание |
|---|---|---|
| $iterator | iterable | Итератор, генератор или массив. |
| $preserve_keys | bool | Необязательный. Сохранять ли ключи. |
Возвращаемое значение
arrayМассив со всеми элементами.
Примеры
Генератор в массив:
<?php
function squares(int $limit): Generator
{
for ($i = 1; $i <= $limit; $i++) {
yield $i * $i;
}
}
echo implode(', ', iterator_to_array(squares(4)));Результат:
1, 4, 9, 16Примечания
Если генератор выдаёт одинаковые ключи, поздние значения затрут ранние — передайте false вторым аргументом.
См. также
- array_values — Возвращает значения массива с ключами по порядку от нуля.
- array_map — Применяет функцию к каждому элементу массива.
- range — Создаёт массив с последовательностью значений.
Вопросы и ответы по теме
В учебнике
- Встроенные интерфейсы — Интерфейсы PHP, которые учат объект вести себя как массив — Countable, IteratorAggregate, ArrayAccess, JsonSerializable и Stringable.