Files
doc-fr/reference/array/functions/array-rand.xml
2023-02-21 01:33:54 -05:00

140 lines
4.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: fc1e94a9c2e271c7cefd86f28a1cb5bc30a52664 Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<!-- CREDITS: DavidA. -->
<refentry xml:id="function.array-rand" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>array_rand</refname>
<refpurpose>Prend une ou plusieurs clés, au hasard dans un tableau</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>int</type><type>string</type><type>array</type></type><methodname>array_rand</methodname>
<methodparam><type>array</type><parameter>array</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>num</parameter><initializer>1</initializer></methodparam>
</methodsynopsis>
<para>
Sélectionne une ou plusieurs valeurs au hasard dans un tableau
et retourne la ou les clés de ces valeurs.
</para>
&caution.cryptographically-insecure;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<para>
Le tableau d'entrée.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>num</parameter></term>
<listitem>
<para>
Spécifie le nombre d'entrées que vous voulez récupérer.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Lorsque vous ne récupérez qu'une seule entrée, la fonction
<function>array_rand</function> retourne la clé d'une entrée choisie
aléatoirement. Sinon, un tableau de clés d'entrées aléatoires sera
retourné. Cela vous permet de faire une sélection au hasard de clés,
ou bien de valeurs. Si plusieurs clés sont retournées, alors elles le
seront dans l'ordre qu'elles étaient dans le tableau d'origine
Le fait de tenter de récupérer plus d'éléments
qu'il n'y en a dans le tableau fera qu'une erreur de niveau
<constant>E_WARNING</constant> sera émise, et NULL sera retourné.
</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>7.1.0</entry>
<entry>
L'algorithme
interne de génération aléatoire <link linkend="migration71.incompatible.rand-srand-aliases">a été modifié</link> pour utiliser le
générateur aleatoire de nombre <link xlink:href="&url.mersenne;">
Mersenne Twister</link> au lieu de la fonction aléatoire libc
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Exemple avec <function>array_rand</function></title>
<programlisting role="php">
<![CDATA[
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>Random\Randomizer::pickArrayKeys</function></member>
<member><function>Random\Randomizer::shuffleArray</function></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:"~/.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
-->