(PHP 4, PHP 5, PHP 7, PHP 8)
array_rand — 从数组中随机取出一个或多个随机键
$array
, int $num
= 1): int|string|array从数组中取出一个或多个随机的单元,并返回随机条目对应的键(一个或多个)。
本函数并不会生成安全加密的值,并且不可用于加密或者要求返回值不可猜测的目的。
如果需要加密安全随机,则可以将 Random\Engine\Secure 引擎用于 Random\Randomizer。对于简单的用例,random_int() 和 random_bytes() 函数提供了操作系统的 CSPRNG 支持的方便且安全的 API。
array
输入的数组。
num
指定要取出的单元数量。
如果只取出一个,array_rand()
返回随机单元的键名。
否则就返回包含随机键名的数组。
完成后,就可以根据随机的键获取数组的随机值。
如果返回的是包含随机键名的数组,数组单元的顺序按照键名在原数组中的顺序排列。
取出数量如果超过 array 的长度,就会导致 E_WARNING
错误,并返回 NULL。
Example #1 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";
?>