iterator_to_array

(PHP 5 >= 5.1.0, PHP 7)

iterator_to_arrayCopia o iterador em um array

Descrição

iterator_to_array ( Traversable $iterator [, bool $use_keys = true ] ) : array

Copia os elementos de um iterador em um array.

Parâmetros

iterator

O iterador que está sendo copiado.

use_keys

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

A partir do PHP 5.5, se uma chave for um array ou um object, um erro warning será gerado. Chaves NULL serão convertidas em uma string vazia, chaves double serão truncadas em sua parte integer, chaves resource irão gerar um erro warning e serão convertidas para o seu resource ID, e as chaves boolean serão convertidas para inteiros.

Nota:

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.

Changelog

Versão Descrição
5.5.0 iterator_to_array() recebeu suporte para outros tipos de chave além de integer e string quando o parâmetro use_keys estiver habilitado.
5.2.1 O parâmetro use_keys foi adicionado.

Exemplos

Exemplo #1 Exemplo da iterator_to_array()

<?php
$iterator 
= new ArrayIterator(array('recipe'=>'pancakes''egg''milk''flour'));
var_dump(iterator_to_array($iteratortrue));
var_dump(iterator_to_array($iteratorfalse));
?>

O exemplo acima irá imprimir:

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