iterator_count
spl_autoload_call
SPL Functions
PHP Manual

# iterator_to_array

Copy the iterator into an array

### Description

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

Copy the elements of an iterator into an array.

### Parameters

`iterator`

  The iterator being copied.

`use_keys`

  Whether to use the iterator element keys as index.

  In PHP 5.5 and later, if a key is an array or object, a warning will be generated. `NULL` keys will be converted to an empty string, double keys will be truncated to their integer counterpart, resource keys will generate a warning and be converted to their resource ID, and boolean keys will be converted to integers.

### Return Values

An array containing the elements of the `iterator`.

### Changelog

Version | Description
--- | ---
5.5.0 | iterator_to_array gained support for key types other than integer and string when the `use_keys` parameter is enabled.
5.2.1 | The `use_keys` parameter was added.

### Examples

Example #1 iterator_to_array example

`<?php
$iterator = new ArrayIterator(array('recipe'=>'pancakes', 'egg', 'milk', 'flour'));
var_dump(iterator_to_array($iterator, true));
var_dump(iterator_to_array($iterator, false));
?>`

The above example will output:

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