cvs: phpdoc-ru /reference/array/functions array-map.xml array-merge-recursive.xml array-merge.xml

From: Date: Mon, 02 Sep 2002 17:23:37 +0000
Subject: cvs: phpdoc-ru /reference/array/functions array-map.xml array-merge-recursive.xml array-merge.xml
Groups: php.doc.ru 
Request: Send a blank email to doc-ru+get-27@lists.php.net to get a copy of this message
tronic Mon Sep 2 13:23:37 2002 EDT Added files: /phpdoc-ru/reference/array/functions array-map.xml array-merge-recursive.xml array-merge.xml Log: Translation complete.

Index: phpdoc-ru/reference/array/functions/array-map.xml +++ phpdoc-ru/reference/array/functions/array-map.xml <?xml version="1.0" encoding="windows-1251"?> <!-- $Revision: 1.1 $ --> <!-- splitted from ./en/functions/array.xml, last change in rev 1.62 --> <refentry id="function.array-map"> <refnamediv> <refname>array_map</refname> <refpurpose> Ïðèìåíèòü ôóíêöèþ îáðàòíîãî âûçîâà êî âñåì ýëåìåíòàì óêàçàííûõ ìàññèâîâ </refpurpose> </refnamediv> <refsect1> <title>Îïèñàíèå</title> <methodsynopsis> <type>ìàññèâ</type><methodname>array_map</methodname> <methodparam><type>ñìåøàííîå</type><parameter>ôóíêöèÿ</parameter></methodparam> <methodparam><type>ìàññèâ</type><parameter>ìàññèâ_1</parameter></methodparam> <methodparam choice="opt"><type>ìàññèâ</type><parameter>ìàññèâ_2...</parameter></methodparam> </methodsynopsis> <para> Ôóíêöèÿ <function>array_map</function> âîçâðàùàåò ìàññèâ, ñîäåðæàùèé ýëåìåíòû âñåõ óêàçàííûõ ìàññèâîâ ïîñëå èõ îáðàáîòêè ôóíêöèåé îáðàòíîãî âûçîâà. Êîëè÷åñòâî ïàðàìåòðîâ, ïåðåäàâàåìûõ ôóíêöèè îáðàòíîãî âûçîâà, äîëæíî ñîâïàäàòü ñ êîëè÷åñòâîì ìàññèâîâ, ïåðåäàííûì ôóíêöèè <function>array_map</function>. </para> <para> <example> <title>Ïðèìåð èñïîëüçîâàíèÿ <function>array_map</function></title> <programlisting role="php"> <![CDATA[ function cube($n) { return $n*$n*$n; } $a = array(1, 2, 3, 4, 5); $b = array_map("cube", $a); print_r($b); ]]> </programlisting> <para>  ðåçóëüòàòå ïåðåìåííàÿ <varname>$b</varname> áóäåò ñîäåðæàòü: <screen> <![CDATA[ Array ( [0] => 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 ) ]]> </screen> </para> </example> </para> <para> <example> <title>Ïðèìåð èñïîëüçîâàíèÿ <function>array_map</function>: îáðàáîòêà íåñêîëüêèõ ìàññèâîâ</title> <programlisting role="php"> <![CDATA[ function show_Spanish($n, $m) { return "×èñëî $n ïî-èñïàíñêè - $m"; } function map_Spanish($n, $m) { return array ($n => $m); } $a = array(1, 2, 3, 4, 5); $b = array("uno", "dos", "tres", "cuatro", "cinco"); $c = array_map("show_Spanish", $a, $b); print_r($c); $d = array_map("map_Spanish", $a , $b); print_r($d); ]]> </programlisting> <para> Ðåçóëüòàò âûïîëíåíèÿ: <screen> <![CDATA[ // printout of $c Array ( [0] => ×èñëî 1 ïî-èñïàíñêè - uno [1] => ×èñëî 2 ïî-èñïàíñêè - dos [2] => ×èñëî 3 ïî-èñïàíñêè - tres [3] => ×èñëî 4 ïî-èñïàíñêè - cuatro [4] => ×èñëî 5 ïî-èñïàíñêè - cinco ) // printout of $d Array ( [0] => Array ( [1] => uno ) [1] => Array ( [2] => dos ) [2] => Array ( [3] => tres ) [3] => Array ( [4] => cuatro ) [4] => Array ( [5] => cinco ) ) ]]> </screen> </para> </example> </para> <para> Îáû÷íî ïðè îáðàáîòêå äâóõ èëè áîëåå ìàññèâîâ, îíè èìåþ îäèíàêîâóþ äëèíó, òàê êàê ôóíêöèÿ îáðàòíîãî âûçîâà ïðèìåíÿåòñÿ ïàðàëëåëüíî ê ñîîòâåòñòâóþùèì ýëåìåíòàì ìàññèâîâ. Åñëè ìàññèâû èìåþò ðàçëè÷íóþ äëèíó, ñàìûé ìàëåíüêèé èç íèõ äîïîëíÿåòñÿ ýëåìåíòàìè ñ ïóñòûìè çíà÷åíèÿìè. </para> <para> Èíòåðåñíûì ýôôåêòîì ïðè èñïîëüçîâàíèè ýòîé ôóíêöèè ÿâëÿåòñÿ ñîçäàíèå ìàññèâà ìàññèâîâ, ÷òî ìîæåò áûòü äîñòèãíóòî ïóòåì èñïîëüçîâàíèÿ çíà÷åíèÿ &null; â êà÷åñòâå èìåíè ôóíêöèè îáðàòíîãî âûçîâà. </para> <para> <example> <title>Ñîçäàíèå ìàññèâà ìàññèâîâ</title> <programlisting role="php"> <![CDATA[ $a = array(1, 2, 3, 4, 5); $b = array("one", "two", "three", "four", "five"); $c = array("uno", "dos", "tres", "cuatro", "cinco"); $d = array_map(null, $a, $b, $c); print_r($d); ]]> </programlisting> </example> </para> <para> Ðåçóëüòàòîì âûïîëíåíèÿ âûøåïðèâåäåííîé ïðîãðàììû áóäåò: <screen> <![CDATA[ Array ( [0] => Array ( [0] => 1 [1] => one [2] => uno ) [1] => Array ( [0] => 2 [1] => two [2] => dos ) [2] => Array ( [0] => 3 [1] => three [2] => tres ) [3] => Array ( [0] => 4 [1] => four [2] => cuatro ) [4] => Array ( [0] => 5 [1] => five [2] => cinco ) ) ]]> </screen> </para> <para> Ñì.òàêæå <function>array_filter</function> è <function>array_reduce</function>. </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:"../../../../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 --> Index: phpdoc-ru/reference/array/functions/array-merge-recursive.xml +++ phpdoc-ru/reference/array/functions/array-merge-recursive.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- splitted from ./en/functions/array.xml, last change in rev 1.12 --> <refentry id="function.array-merge-recursive"> <refnamediv> <refname>array_merge_recursive</refname> <refpurpose>Ðåêóðñèâíî ñëèòü äâà èëè áîëüøåå êîëè÷åñòâî ìàññèâîâ</refpurpose> </refnamediv> <refsect1> <title>Îïèñàíèå</title> <methodsynopsis> <type>ìàññèâ</type><methodname>array_merge_recursive</methodname> <methodparam><type>ìàññèâ</type><parameter>ìàññèâ_1</parameter></methodparam> <methodparam><type>ìàññèâ</type><parameter>ìàññèâ_2</parameter></methodparam> <methodparam choice="opt"><type>ìàññèâ</type><parameter>...</parameter></methodparam> </methodsynopsis> <para> Ôóíêöèÿ <function>array_merge_recursive</function> ñëèâàåò ýëåìåíòû äâóõ èëè áîëüøåãî êîëè÷åñòâà ìàññèâîâ òàêèì îáðàçîì, ÷òî çíà÷åíèÿ îäíîãî ìàññèâà ïðèñîåäèíÿþòñÿ ê çíà÷åíèÿì ïðåäûäóùåãî. Ðåçóëüòàòîì ðàáîòû ôóíêöèè ÿâëÿåòñÿ íîâûé ìàññèâ. </para> <para> Åñëè âõîäíûå ìàññèâû èìåþò îäèíàêîâûå ñòðîêîâûå êëþ÷è, òîãäà çíà÷åíèÿ, ñîîòâåòñòâóþùèå ýòèì êëþ÷àì, ðåêóðñèâíî ñëèâàþòñÿ â îäèí ìàññèâ, òàêèì îáðàçîì, åñëè îäíî èç çíà÷åíèé ÿâëÿåòñÿ ìàññèâîì, ôóíêöèÿ ñëèâàåò åãî ñ ñîîòâåòñòâóþùèì çíà÷åíèåì â äðóãîì ìàññèâå. Îäíàêî, åñëè ìàññèâû èìåþò îäèíàêîâûå ÷èñëîâûå êëþ÷è, çíà÷åíèå, óïîìÿíóòîå ïîñëåäíèì, íå çàìåíèò èñõîäíîå çíà÷åíèå, à áóäåò ñëèòî ñ íèì. </para> <para> <example> <title>Ïðèìåð èñïîëüçîâàíèÿ <function>array_merge_recursive</function></title> <programlisting role="php"> <![CDATA[ $ar1 = array ("color" => array ("favorite" => "red"), 5); $ar2 = array (10, "color" => array ("favorite" => "green", "blue")); $result = array_merge_recursive ($ar1, $ar2); ]]> </programlisting> <para> Ïåðåìåííàÿ <literal>$result</literal> áóäåò ñîäåðæàòü: <screen role="php"> <![CDATA[ Array ( [color] => Array ( [favorite] => Array ( [0] => red [1] => green ) [0] => blue ) [0] => 5 [1] => 10 ) ]]> </screen> </para> </example> </para> <para> Ñì.òàêæå <function>array_merge</function>. </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:"../../../../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 --> Index: phpdoc-ru/reference/array/functions/array-merge.xml +++ phpdoc-ru/reference/array/functions/array-merge.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- splitted from ./en/functions/array.xml, last change in rev 1.2 --> <refentry id="function.array-merge"> <refnamediv> <refname>array_merge</refname> <refpurpose>Ñëèòü äâà èëè áîëüøåå êîëè÷åñòâî ìàññèâîâ</refpurpose> </refnamediv> <refsect1> <title>Îïèñàíèå</title> <methodsynopsis> <type>ìàññèâ</type><methodname>array_merge</methodname> <methodparam><type>ìàññèâ</type><parameter>ìàññèâ_1</parameter></methodparam> <methodparam><type>ìàññèâ</type><parameter>ìàññèâ_2</parameter></methodparam> <methodparam choice="opt"><type>array</type><parameter>...</parameter></methodparam> </methodsynopsis> <para> Ôóíêöèÿ <function>array_merge</function> ñëèâàåò ýëåìåíòû äâóõ èëè áîëüøåãî êîëè÷åñòâà ìàññèâîâ òàêèì îáðàçîì, ÷òî çíà÷åíèÿ îäíîãî ìàññèâà ïðèñîåäèíÿþòñÿ ê çíà÷åíèÿì ïðåäûäóùåãî. Ðåçóëüòàòîì ðàáîòû ôóíêöèè ÿâëÿåòñÿ íîâûé ìàññèâ. </para> <para> Åñëè âõîäíûå ìàññèâû èìåþò îäèíàêîâûå ñòðîêîâûå êëþ÷è, òîãäà çíà÷åíèÿ, ñîîòâåòñòâóþùèå ýòèì êëþ÷àì, ðåêóðñèâíî ñëèâàþòñÿ â îäèí ìàññèâ, òàêèì îáðàçîì, åñëè îäíî èç çíà÷åíèé ÿâëÿåòñÿ ìàññèâîì, ôóíêöèÿ ñëèâàåò åãî ñ ñîîòâåòñòâóþùèì çíà÷åíèåì â äðóãîì ìàññèâå. Îäíàêî, åñëè ìàññèâû èìåþò îäèíàêîâûå ÷èñëîâûå êëþ÷è, çíà÷åíèå, óïîìÿíóòîå ïîñëåäíèì, <emphasis role="strong">íå çàìåíèò</emphasis> èñõîäíîå çíà÷åíèå, à áóäåò ñëèòî ñ íèì. </para> <para> <example> <title>Ïðèìåð èñïîëüçîâàíèÿ <function>array_merge</function></title> <programlisting role="php"> <![CDATA[ $array1 = array ("color" => "red", 2, 4); $array2 = array ("a", "b", "color" => "green", "shape" => "trapezoid", 4); $result = array_merge ($array1, $array2); ]]> </programlisting> <para> Ïåðåìåííàÿ <literal>$result</literal> áóäåò ñîäåðæàòü: <screen role="php"> <![CDATA[ Array ( [color] => green [0] => 2 [1] => 4 [2] => a [3] => b [shape] => trapezoid [4] => 4 ) ]]> </screen> </para> </example> </para> <para> <example> <title>Ïðèìåð ïðîñòîãî èñïîëüçîâàíèÿ <function>array_merge</function></title> <programlisting role="php"> <![CDATA[ $array1 = array(); $array2 = array(1 => "data"); $result = array_merge($array1, $array2); ]]> </programlisting> <para> Íå çàáûâàéòå, ÷òî ÷èñëîâûå êëþ÷è áóäóò ïåðåíóìåðîâàíû! <screen role="php"> <![CDATA[ Array ( [0] => data ) ]]> </screen> </para> <para> Åñëè âû õîòèòå ïîëíîñòüþ ñîõðàíèòü ìàññèâû è ïðîñòî ñëèòü èõ âìåñòå, èñïîëüçóéòå îïåðàòîð <literal>+</literal>: <programlisting role="php"> <![CDATA[ $array1 = array(); $array2 = array(1 => "data"); $result = $array1 + $array2; ]]> </programlisting> ×èñëîâîé êëþ÷ áóäåò ñîõðàíåí, ïîýòîìó àññîöèàöèÿ òàêæå ñîõðàíÿåòñÿ. <screen role="php"> <![CDATA[ Array ( [1] => data ) ]]> </screen> </para> </example> </para> <note> <para> Îáùèå êëþ÷è áóäóò ïåðåçàïèñàíû ïî ïðèíöèïó "ïåðâûé ïðèøåë - ïåðâûé îáðàáîòàí". </para> </note> <para> Ñì.òàêæå <function>array_merge_recursive</function>. </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:"../../../../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 -->
« previous php.doc.ru (#27) next »