1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 330578 $ -->
<refentry xml:id="function.iterator-to-array" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>iterator_to_array</refname>
<refpurpose>Copy the iterator into an array</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>iterator_to_array</methodname>
<methodparam><type>Traversable</type><parameter>iterator</parameter></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>use_keys</parameter><initializer>true</initializer></methodparam>
</methodsynopsis>
<para>
Copy the elements of an iterator into an array.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>iterator</parameter></term>
<listitem>
<para>
The iterator being copied.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>use_keys</parameter></term>
<listitem>
<para>
Whether to use the iterator element keys as index.
</para>
<para>
In PHP 5.5 and later, if a key is an <type>array</type> or
<type>object</type>, a warning will be generated. &null; keys will be
converted to an empty string, <type>double</type> keys will be
truncated to their <type>integer</type> counterpart,
<type>resource</type> keys will generate a warning and be converted to
their resource ID, and <type>boolean</type> keys will be converted to
integers.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
An <type>array</type> containing the elements of the <parameter>iterator</parameter>.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>5.5.0</entry>
<entry>
<function>iterator_to_array</function> gained support for key types
other than <type>integer</type> and <type>string</type> when the
<parameter>use_keys</parameter> parameter is enabled.
</entry>
</row>
<row>
<entry>5.2.1</entry>
<entry>
The <parameter>use_keys</parameter> parameter was added.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>iterator_to_array</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$iterator = new ArrayIterator(array('recipe'=>'pancakes', 'egg', 'milk', 'flour'));
var_dump(iterator_to_array($iterator, true));
var_dump(iterator_to_array($iterator, false));
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
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"
}
]]>
</screen>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
|