1
0
mirror of https://github.com/php/doc-fr.git synced 2026-03-24 23:22:18 +01:00
Files
archived-doc-fr/reference/array/functions/array-multisort.xml
Damien Seguy 88c52a26f0 early spring cleaning
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@114768 c90b9560-bf6c-de11-be94-00142212c4b1
2003-02-04 17:47:00 +00:00

135 lines
4.5 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- splitted from ./fr/functions/array.xml, last change in rev 1.30 -->
<!-- last change to 'array-multisort' in en/ tree in rev 1.11 -->
<refentry id="function.array-multisort">
<refnamediv>
<refname>array_multisort</refname>
<refpurpose>Tri multi-dimensionnel</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<methodsynopsis>
<type>bool</type><methodname>array_multisort</methodname>
<methodparam><type>array</type><parameter>ar1</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>arg</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>...</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>...</parameter></methodparam>
</methodsynopsis>
<para>
<function>array_multisort</function> sert &agrave; trier simultan&eacute;ment
plusieurs tableaux, ou bien &agrave; trier un tableau multi-dimensionnel,
suivant l'une ou l'autre de ses dimensions. Les cl&eacute;s sont
pr&eacute;serv&eacute;es.
</para>
<para>
Les tableaux pass&eacute;s en arguments sont trait&eacute;s comme les colonnes
d'une table, tri&eacute;es par lignes (un peu comme la clause SQL ORDER BY).
Le premier tableau est la cl&eacute; primaire de tri. Les valeurs du premier
tableau qui sont &eacute;gales, sont tri&eacute;es gr&acirc;ce au tableau suivant,
et ainsi de suite...
</para>
<para>
La structure des arguments de <function>array_multisort</function> est un peu
inhabituelle, mais elle est plus souple. Le premier argument DOIT &ecirc;tre
un tableau, mais les arguments suivants peuvent &ecirc;tre des tableaux ou
une ou deux options de tri, prises dans les valeurs suivantes :
</para>
<para>
Options de tri :
<itemizedlist>
<listitem>
<simpara><constant>SORT_ASC</constant> - Tri en ordre ascendant</simpara>
</listitem>
<listitem>
<simpara><constant>SORT_DESC</constant> - Tri en ordre descendant</simpara>
</listitem>
</itemizedlist>
</para>
<para>
Options de type de tri:
<itemizedlist>
<listitem>
<simpara><constant>SORT_REGULAR</constant> - Comparaison normale des valeurs</simpara>
</listitem>
<listitem>
<simpara><constant>SORT_NUMERIC</constant> - Comparaison num&eacute;rique des valeurs</simpara>
</listitem>
<listitem>
<simpara><constant>SORT_STRING</constant> - Comparaison alphab&eacute;tique des valeurs</simpara>
</listitem>
</itemizedlist>
</para>
<para>
Une seule option de tri de chaque type peut &ecirc;tre appliqu&eacute;e
apr&egrave;s un tableau. Une option ne s'applique qu'au tableau
pr&eacute;c&eacute;dent. Tous les autres sont mis par d&eacute;faut
&agrave; SORT_ASC et SORT_REGULAR.
</para>
<para>
&return.success;
</para>
<para>
<example>
<title>Trier plusieurs tableaux</title>
<programlisting role="php">
<![CDATA[
<?php
$ar1 = array ("10", 100, 100, "a");
$ar2 = array (1, 3, "2", 1);
array_multisort ($ar1, $ar2);
?>
]]>
</programlisting>
</example>
</para>
<para>
Dans cet exemple, apr&egrave;s le tri, le premier
tableau contient 10, "a", 100, 100; Le deuxi&egrave;me tableau
contient 1, 1, "2", 3. Les entr&eacute;es du second tableau
correspondant aux valeurs jumelles du premier
tableau (100 et 100), sont aussi tri&eacute;es.
</para>
<para>
<example>
<title>Classer un tableau multidimensionnel</title>
<programlisting role="php">
<![CDATA[
<?php
$ar = array (array ("10", 100, 100, "a"), array (1, 3, "2", 1));
array_multisort($ar[0], SORT_ASC, SORT_STRING,
$ar[1], SORT_NUMERIC, SORT_DESC);
?>
]]>
</programlisting>
</example>
</para>
<para>
Dans cet exemple, apr&egrave;s le tri, le premier tableau contient
10, 100, 100, "a" (tri alphab&eacute;tique, ordre croissant); Le
deuxi&egrave;me tableau contient 1, 3, "2", 1 (tri
num&eacute;rique, ordre d&eacute;croissant).
</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
-->