PHP array_rand() 函数
说明
array_rand()
函数从数组中返回一个或多个随机键。
下表总结了该函数的技术细节。
返回值: | 从数组中返回一个随机键或一组随机键。 |
---|---|
变更日志: |
自 PHP 7.1.0 起,内部随机化算法已更改为使用 Mersenne Twister 随机数生成器而不是 libc rand 函数。 自 PHP 5.2.1 起,生成的键数组不再被打乱。
|
版本: | PHP 4+ |
语法
array_rand()
函数的基本语法如下:
array_rand(array, num);
下面的例子展示了 array_rand()
函数的作用。
<?php
// 样本数组
$colors = array("red", "green", "blue", "yellow", "orange");
// 从颜色数组中获取两个随机键
$rand_keys = array_rand($colors, 2);
print_r($rand_keys);
// 从颜色数组中打印相应的值
echo $colors[$rand_keys[0]] . "<br>";
echo $colors[$rand_keys[1]];
?>
注意:如果您尝试选取的元素多于数组中的元素,array_rand()
函数将抛出 E_WARNING
级错误,并且 NULL
将被返回。
参数
array_rand()
函数接受以下参数。
参数 | 说明 |
---|---|
array | 必填。 指定要处理的数组。 |
num | 可选。 指定要返回多少随机键。 |
更多示例
这里有更多示例展示了 array_rand()
函数的实际工作原理:
这个函数也可以和关联数组一起使用,下面是一个例子:
<?php
// 样本数组
$alphabets = array("a"=>"apple", "b"=>"ball", "c"=>"cat", "d"=>"dog");
// 从字母数组中获取三个随机键
$rand_keys = array_rand($alphabets, 3);
print_r($rand_keys);
// 使用循环从字母数组中打印相应的值
foreach($rand_keys as $key){
echo $alphabets[$key] . "<br>";
}
?>
Advertisements