iterator_to_array

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

iterator_to_arrayCopia o iterador em um array

Descrição

iterator_to_array(Traversable|array $iterator, bool $preserve_keys = true): array

Copia os elementos de um iterador em um array.

Parâmetros

iterator

O iterador que está sendo copiado.

preserve_keys

Se as chaves do iterador serão utilizadas como índices.

Se a chave for um array ou object, um erro warning será gerado. Chaves null serão convertidas em uma string vazia, chaves float serão truncadas em sua parte int, chaves resource irão gerar um erro warning e serão convertidas para o seu resource ID, e as chaves bool serão convertidas para inteiros.

Note:

Se este parâmetro não for definido ou for definido como true, as chaves duplicadas serão sobrescritas. O último valor com aquela chave estará no array retornado. Defina esse parâmetro como false para receber todos os valores em qualquer caso.

Valor Retornado

Um array contendo os elementos do iterator.

Registro de Alterações

Versão Descrição
8.2.0 O tipo de iterator foi ampliado de Traversable para Traversable|array.

Exemplos

Example #1 Exemplo da 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));
?>

O exemplo acima produzirá:

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"
}