当前位置:首页 > PHP > 关键词 > 数组 > 正文

PHP array_rand()从数组中随机取出1个或多个值

PHP array_rand()从数组中随机取出1个或多个值

array_rand()

语法:

array_rand(array[, number])

number是需要返回的随机键值数,省略默认为1。需要注意的是,当number取值1时,返回的是一个随机键值,当大于1时,返回的是一个数组。

$array = array(
    0 => '芝麻通',
    1 => 'www.zhimatong.com',
    2 => 'a',
    3 => 'b',
    4 => 'c',
    5 => 1,
    6 => 2,
    7 => 3
);

$random_key = array_rand($array);
echo $random_key;

运行以上代码,会随机输出0-7中的一个数字(键值),对应的随机元素便是$array[$random_key]。

当number大于1时:

$array = array(
    0 => '芝麻通',
    1 => 'www.zhimatong.com',
    2 => 'a',
    3 => 'b',
    4 => 'c',
    5 => 1,
    6 => 2,
    8 => 3
);

$random_key = array_rand($array, 3);
print_r($random_key);

打印结果:

Array
(
    [0] => 1
    [1] => 5
    [2] => 6
)

每次重新执行程序结果可能都不相同,上述1,5,6即$array这个数组的随机键值。如果要得到该数组随机元素,可以如下:

$array = array(
    0 => '芝麻通',
    1 => 'www.zhimatong.com',
    2 => 'a',
    3 => 'b',
    4 => 'c',
    5 => 1,
    6 => 2,
    7 => 3
);

$random_key = array_rand($array, 3);
$random_array = array();

foreach ($random_key as $val) {
    $random_array[] = $array[$val];
}
print_r($random_array);

运行的结果可能是:

Array
(
    [0] => www.zhimatong.com
    [1] => b
    [2] => 2
)

本文属原创,转载请注明原文:https://www.zhimatong.com/jiaocheng/39.html

为保证教程的实用性及扩大知识面覆盖,如果您有相似问题而未解决,可联系在线客服免费技术支持。

内容有用

联系
顾问

在线
客服
账号登录

没有账号?立即注册

忘记密码

登录即同意用户协议没有账号? 立即注册
账号注册
我已阅读并同意用户协议
立即注册
注册即同意用户协议已有账号? 立即登录
找回密码

操作步骤:邮箱验证->设置新密码

注册即同意用户协议已有账号? 立即登录