aidan Tue Aug 3 04:52:13 2004 EDT
Modified files: /phpdoc/en/reference/array/functions array-walk-recursive.xml Log: Added example and alterered spacing - it should be complete now, comments welcome! http://cvs.php.net/diff.php/phpdoc/en/reference/array/functions/array-walk-recursive.xml?r1=1.2&r2=1.3&ty=u Index: phpdoc/en/reference/array/functions/array-walk-recursive.xml diff -u phpdoc/en/reference/array/functions/array-walk-recursive.xml:1.2 phpdoc/en/reference/array/functions/array-walk-recursive.xml:1.3 --- phpdoc/en/reference/array/functions/array-walk-recursive.xml:1.2 Tue Aug 3 03:07:13 2004 +++ phpdoc/en/reference/array/functions/array-walk-recursive.xml Tue Aug 3 04:52:13 2004 @@ -1,86 +1,81 @@ <?xml version='1.0' encoding='iso-8859-1'?> -<!-- $Revision: 1.2 $ --> - <refentry id="function.array-walk-recursive"> - <refnamediv> - <refname>array_walk_recursive</refname> - <refpurpose> - Apply a user function recursively to every member of an array - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <methodsynopsis> - <type>bool</type><methodname>array_walk_recursive</methodname> - <methodparam><type>array</type><parameter>input</parameter></methodparam> - <methodparam><type>string</type><parameter>funcname</parameter></methodparam> - <methodparam choice="opt"><type>mixed</type><parameter>userdata</parameter></methodparam> - </methodsynopsis> - <simpara> - &return.success; - </simpara> - <simpara> - Applies the user-defined function <parameter>function</parameter> to each - element of the <parameter>array</parameter> array. This function will recur - into deeper arrays. Typically, <parameter>function</parameter> takes on two - parameters. The <parameter>array</parameter> parameter's value being the first, and - the key/index second. If the optional <parameter>userdata</parameter> - parameter is supplied, it will be passed as the third parameter to - the callback <parameter>function</parameter>. - </simpara> - <note> - <para> - If <parameter>function</parameter> needs to be working with the - actual values of the array, specify the first parameter of - <parameter>function</parameter> as a - <link linkend="language.references">reference</link>. Then, - any changes made to those elements will be made in the - original array itself. - </para> - </note> - <para> - <example> - <title><function>array_walk_recursive</function> example</title> - <programlisting role="php"> +<!-- $Revision: 1.3 $ --> +<refentry id="function.array-walk-recursive"> + <refnamediv> + <refname>array_walk_recursive</refname> + <refpurpose> + Apply a user function recursively to every member of an array + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <methodsynopsis> + <type>bool</type><methodname>array_walk_recursive</methodname> + <methodparam><type>array</type><parameter>input</parameter></methodparam> + <methodparam><type>string</type><parameter>funcname</parameter></methodparam> + <methodparam choice="opt"><type>mixed</type><parameter>userdata</parameter></methodparam> + </methodsynopsis> + <simpara> + Applies the user-defined function <parameter>funcname</parameter> to each + element of the <parameter>input</parameter> array. This function will recur + into deeper arrays. Typically, <parameter>funcname</parameter> takes on two + parameters. The <parameter>input</parameter> parameter's value being the first, and + the key/index second. If the optional <parameter>userdata</parameter> + parameter is supplied, it will be passed as the third parameter to + the callback <parameter>funcname</parameter>. + </simpara> + <simpara> + &return.success; + </simpara> + <note> + <para> + If <parameter>funcname</parameter> needs to be working with the + actual values of the array, specify the first parameter of + <parameter>funcname</parameter> as a + <link linkend="language.references">reference</link>. Then, + any changes made to those elements will be made in the + original array itself. + </para> + </note> + <para> + <example> + <title><function>array_walk_recursive</function> example</title> + <programlisting role="php"> <![CDATA[ <?php $sweet = array('a' => 'apple', 'b' => 'banana'); $fruits = array('sweet' => $sweet, 'sour' => 'lemon'); -function test_alter(&$item1, $key, $prefix) +function test_print($item, $key) { - $item1 = "$prefix: $item1"; + echo "$key holds $item\n"; } -function test_print($item2, $key) -{ - echo "$key. $item2<br />\n"; -} - -echo "Before ...:\n"; -array_walk($fruits, 'test_print'); - -array_walk($fruits, 'test_alter', 'fruit'); -echo "... and after:\n"; - -array_walk($fruits, 'test_print'); +array_walk_recursive($fruits, 'test_print'); ?> ]]> - </programlisting> - <para> - The printout of the program above will be: - </para> - <screen role="php"> + </programlisting> + <para> + The printout of the program above will be: + </para> + <screen role="php"> <![CDATA[ -// No idea, because PHP segfaults! +a holds apple +b holds banana +sour holds lemon ]]> - </screen> - </example> + </screen> + <para> + You may notice that the key 'sweet' is never displayed. Any key that holds an + <type>array</type> will not be passed to the function. </para> - <simpara> - See also <function>array_walk</function> - </simpara> - </refsect1> - </refentry> + </example> + </para> + <simpara> + See also <function>array_walk</function>. + </simpara> + </refsect1> +</refentry> <!-- Keep this comment at the end of the file Local variables: @@ -101,4 +96,4 @@ vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 ---> +--> \ No newline at end of file