(PHP 5 >= 5.1.0, PHP 7, PHP 8)
iterator_to_array — Копирует итератор в массив
Копирует элементы итератора в массив.
iteratorКопируемый итератор.
preserve_keysСледует ли использовать ключи элементов итератора как индексы.
Если ключ является массивом (array) или
объектом (object), то бросается предупреждение.
Ключи со значением null преобразуются в пустую строку,
ключи в виде чисел с плавающей точкой (float)
обрезаются до их целочисленных (int) частей, ключи
с ресурсами (resource) бросают предупреждение и преобразуются
в их идентификаторы ресурса, а логические (bool)
ключи преобразуются в целые числа.
Замечание:
Если параметр не задан, либо задан как
true, дублирующиеся ключи будут перезаписаны. Последнее значение с заданным ключом будет в результирующем массиве. Установите этот параметр равнымfalseдля получения всех значений.
Массив, содержащий элементы iterator.
| Версия | Описание |
|---|---|
| 8.2.0 |
Тип параметра iterator был расширен с
Traversable до Traversable|array.
|
Пример #1 Пример использования iterator_to_array()
<?php
$iterator = new ArrayIterator(array('recipe'=>'pancakes', 'egg', 'milk', 'flour'));
var_dump(iterator_to_array($iterator, true));
var_dump(iterator_to_array($iterator, false));
?>Результат выполнения приведённого примера:
array(4) {
["recipe"]=>
string(8) "pancakes"
[0]=>
string(3) "egg"
[1]=>
string(4) "milk"
[2]=>
string(5) "flour"
}
array(4) {
[0]=>
string(8) "pancakes"
[1]=>
string(3) "egg"
[2]=>
string(4) "milk"
[3]=>
string(5) "flour"
}