最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP中array_rand()函数在数组中随机抽取n个数据的值
时间:2022-06-24 19:48:41 编辑:袖梨 来源:一聚教程网
定义和用法
array_rand() 函数返回数组中的随机键名,或者如果您规定函数返回不只一个键名,则返回包含随机键名的数组。
说明
array_rand() 函数从数组中随机选出一个或多个元素,并返回。
第二个参数用来确定要选出几个元素。如果选出的元素不止一个,则返回包含随机键名的数组,否则返回该元素的键名。
array_rand() 在你想从数组中取出一个或多个随机的单元时相当有用。它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1。如果你只取出一个,array_rand() 返回一个随机单元的键名,否则就返回一个包含随机键名的数组。这样你就可以随机从数组中取出键名和值。
如下例所示:
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
print $input[$rand_keys[0]] . "n";
print $input[$rand_keys[1]] . "n";
输出:
Trinity
Cypher
【注意】
当 num_req 为 1 时,返回非数组数据,而当 num_req >=2 时,返回数组数据,所以,如果取的数量不确定是否为 1 的情况下,建议如下方式统一转换为数组:
$num_req = max(1, $num_req);
$num_req = min($num_req, count($input));
$rand_keys = (array)array_rand($input, $num_req);
组随机抽取shuffle()和array_rand()
随机抽取就是将原有数组的元素打乱后输出,这意味着每次执行后,抽取的顺序或元素都不同,该功能可以用来在网页上每次显示不同的广告用shuffle()函数实现数组的随机抽取:
$textArray = array('1','2','3','4','5','6','7');
shuffle($textArray);
print_r($textArray);
?>
结果如下显示:
Array ( [0] => 6 [1] => 3 [2] => 7 [3] => 4 [4] => 1 [5] => 2 [6] => 5 )
实现的数组元素的随机排序;
另外php还提供了从数组中随机抽取值的函数:array_rand() ,其调用格式如下:
array_rand(<数组>,[抽取元素的个数]);
$arry = array('A','B','C','D');
$result = array_rand($arry,2);
foreach ($result as $val) {
echo $arry["$val"].""; }
?>
结果显示如下:
B
C
刷新有不同的结果;
相关文章
- 以闪亮之名店长体验流霞季怎么玩 缘溪临霞套装活动介绍 12-31
- 未定事件簿旧梦新生左然篇怎么玩 旧梦新生左然篇活动介绍 12-31
- 未定事件簿左然破浪远行怎么样 12-31
- 桃源深处有人家行医问诊怎么玩 12-31
- 恋与制作人跨年福利有哪些 恋与制作人跨年福利内容介绍 12-31
- 阴阳师协同对弈大乱斗怎么玩 阴阳师协同对弈大乱斗活动介绍 12-31