cvs: phpdoc-fa /reference/array/functions usort.xml

From: Date: Tue, 09 Jun 2009 15:38:47 +0000
Subject: cvs: phpdoc-fa /reference/array/functions usort.xml
Groups: php.doc.fa 
Request: Send a blank email to doc-fa+get-109@lists.php.net to get a copy of this message
psalehpoor Tue Jun 9 15:38:47 2009 UTC Added files: /phpdoc-fa/reference/array/functions usort.xml Log: translation to persian http://cvs.php.net/viewvc.cgi/phpdoc-fa/reference/array/functions/usort.xml?view=markup&rev=1.1 Index: phpdoc-fa/reference/array/functions/usort.xml +++ phpdoc-fa/reference/array/functions/usort.xml <?xml version="1.0" encoding="utf-8"?> <!-- EN-Revision: 1.28 Maintainer: pedram Status: ready --> <!-- $Revision: 1.1 $ --> <refentry xml:id="function.usort" xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>usort</refname> <refpurpose>آرایه را با توجه به مقادیر با استفاده از تابع مقایسه تعریف شده توسط کاربر مرتب کن</refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>bool</type><methodname>usort</methodname> <methodparam><type>array</type><parameter role="reference">array</parameter></methodparam> <methodparam><type>callback</type><parameter>cmp_function</parameter></methodparam> </methodsynopsis> <para> این تابع آرایه را با توجه به مقادیر با استفاده از تابع مقایسه فراهم شده توسط کاربر مرتب خواهد نمود. اگر آرایه مورد نظر شما باید براساس یک معیار غیر بدیهی مرتب شود از این تابع باید استفاده کنید. </para> <note> <para> اگر دو عضو برابر با یکدیگر باشند، ترتیب آنها در آرایه مرتب شده نامشخص خواهد بود. </para> </note> &note.no-key-association; </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>array</parameter></term> <listitem> <para> آرایه ورودی. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>cmp_function</parameter></term> <listitem> <para> تابع مقایسه یک عدد صحیح کوچکتر، مساوی، یا بزرگتر از صفر بازمی‌گرداند اگر اولین آرگومان به ترتیب کوچک‌تر، مساوی با، یا بزرگتر از دومین آرگومان است. </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> &return.success; </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>4.1.0</entry> <entry> یک الگوریتم جدید مرتب‌سازی معرفی شد. <parameter>cmp_function</parameter> ترتیب اصلی را برای اعضای مقایسه شده برابر حفظ نمی‌کند. </entry> </row> </tbody> </tgroup> </informaltable> </para> </refsect1> <refsect1 role="examples"> &reftitle.examples; <para> <example> <title>مثال <function>usort</function></title> <programlisting role="php"> <![CDATA[ <?php function cmp($a, $b) { if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; } $a = array(3, 2, 5, 6, 1); usort($a, "cmp"); foreach ($a as $key => $value) { echo "$key: $value\n"; } ?> ]]> </programlisting> &example.outputs; <screen> <![CDATA[ 0: 1 1: 2 2: 3 3: 5 4: 6 ]]> </screen> </example> </para> <note> <para> مشخص است که در این حالت بدیهی تابع <function>sort</function> مناسب‌تر خواهد بود. </para> </note> <para> <example> <title> مثال <function>usort</function> با استفاده از آرایه چندبعدی </title> <programlisting role="php"> <![CDATA[ <?php function cmp($a, $b) { return strcmp($a["fruit"], $b["fruit"]); } $fruits[0]["fruit"] = "lemons"; $fruits[1]["fruit"] = "apples"; $fruits[2]["fruit"] = "grapes"; usort($fruits, "cmp"); while (list($key, $value) = each($fruits)) { echo "\$fruits[$key]: " . $value["fruit"] . "\n"; } ?> ]]> </programlisting> <para> هنگام مرتب‌سازی آرایه چندبعدی، <varname>$a</varname> و <varname>$b</varname> ارجاع به اولین اندیس آرایه را نگه دارید. </para> &example.outputs; <screen> <![CDATA[ $fruits[0]: apples $fruits[1]: grapes $fruits[2]: lemons ]]> </screen> </example> </para> <para> <example> <title> مثال <function>usort</function> با استفاده از یک تابع عضو یک شی </title> <programlisting role="php"> <![CDATA[ <?php class TestObj { var $name; function TestObj($name) { $this->name = $name; } /* This is the static comparing function: */ static function cmp_obj($a, $b) { $al = strtolower($a->name); $bl = strtolower($b->name); if ($al == $bl) { return 0; } return ($al > $bl) ? +1 : -1; } } $a[] = new TestObj("c"); $a[] = new TestObj("b"); $a[] = new TestObj("d"); usort($a, array("TestObj", "cmp_obj")); foreach ($a as $item) { echo $item->name . "\n"; } ?> ]]> </programlisting> &example.outputs; <screen> <![CDATA[ b c d ]]> </screen> </example> </para> </refsect1> <refsect1 role="seealso"> &reftitle.seealso; <para> <simplelist> <member><function>uasort</function></member> <member>&seealso.array.sorting;</member> </simplelist> </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.fa (#109) next »