array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'fr', ), 'this' => array ( 0 => 'function.array-rand.php', 1 => 'array_rand', ), 'up' => array ( 0 => 'ref.array.php', 1 => 'Fonctions sur les tableaux', ), 'prev' => array ( 0 => 'function.array-push.php', 1 => 'array_push', ), 'next' => array ( 0 => 'function.array-reduce.php', 1 => 'array_reduce', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'fr', 'path' => 'reference/array/functions/array-rand.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
array_rand — Prend une ou plusieurs clés, au hasard dans un tableau
Sélectionne une ou plusieurs valeurs au hasard dans un tableau et retourne la ou les clés de ces valeurs.
Cette fonction ne génère pas de valeurs cryptographiquement sûres, et ne doit pas être utilisée à des fins cryptographiques, ou à des fins qui exigent que les valeurs renvoyées soient indéchiffrables.
Si de l'aléatoire cryptographiquement sûre est requis, le Random\Randomizer peut être utilisé avec le moteur Random\Engine\Secure. Pour des cas d'usage simple, les fonctions random_int() et random_bytes() fournissent une API pratique et sûre qui est qui est soutenu par le CSPRNG du système d'exploitation.
array
Le tableau d'entrée. Ne peut pas être vide.
num
Spécifie le nombre d'entrées que vous voulez récupérer.
Doit être supérieur à zéro et inférieur ou égal à la longueur de array
.
Lorsque vous ne récupérez qu'une seule entrée, la fonction array_rand() 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.
Lance une ValueError si array
est vide,
ou si num
est hors de portée.
Version | Description |
---|---|
8.0.0 |
array_rand() lance désormais une ValueError
si num est hors de portée ; précédemment, un
E_WARNING était généré et la fonction renvoyait null .
|
8.0.0 |
array_rand() lance désormais une ValueError
si array est vide ; précédemment, un
E_WARNING était généré et la fonction renvoyait null .
|
7.1.0 | L'algorithme interne de génération aléatoire a été modifié pour utiliser le générateur aleatoire de nombre » Mersenne Twister au lieu de la fonction aléatoire libc |
Exemple #1 Exemple avec array_rand()
<?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";
?>