iterator_to_array
(PHP 5 >= 5.1.0, PHP 7)
iterator_to_array — イテレータを配列にコピーする
説明
iterator_to_array
( Traversable $iterator
[, bool $use_keys
= true
] ) : array
イテレータの要素を配列にコピーします。
パラメータ
iterator
コピーしたいイテレータ。
use_keys
イテレータの要素のキーをインデックスとして使用するかどうか。
PHP 5.5 以降では、キーが array あるいは object のときに警告を発するようになりました。 キーが
null
の場合は空文字列に変換し、キーが float の場合は int 型になるよう切り詰めます。 キーが resource の場合は警告を発し、リソース ID に変換します。 また、キーが bool の場合は整数値に変換します。注意:
このパラメータを省略したり
true
を指定したりした場合は、 重複するキーは上書きされます。そのキーに対して最後にあらわれた値が array で返されることになります。 このパラメータをfalse
にすると、重複があってもすべての値を返します。
返り値
iterator
の要素を含む配列を返します。
例
例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" }