SPL 関数
PHP Manual

iterator_to_array

(PHP 5 >= 5.1.0)

iterator_to_arrayイテレータを配列にコピーする

説明

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

イテレータの要素を配列にコピーします。

パラメータ

iterator

コピーしたいイテレータ。

use_keys

イテレータの要素のキーをインデックスとして使用するかどうか。

PHP 5.5 以降では、キーが array あるいは object のときに警告を発するようになりました。 キーが NULL の場合は空文字列に変換し、キーが double の場合は integer 型になるよう切り詰めます。 キーが resource の場合は警告を発し、リソース ID に変換します。 また、キーが boolean の場合は整数値に変換します。

返り値

iterator の要素を含む配列を返します。

変更履歴

バージョン 説明
5.5.0 iterator_to_array()use_keys パラメータを有効にしたときの、 integerstring 以外の型に対するサポートを強化しました。
5.2.1 use_keys パラメータが追加されました。

例1 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));
?>

上の例の出力は以下となります。

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


SPL 関数
PHP Manual