撰写日期:2016-7-20 16:00:24
有5个数:1 4 7 9 6
用PHP实现随机抽取5个数中的其中一个
方法一:
<?php $test = array(1,4,7,9,6);//对这5个数建立数字索引数组,则索引值为0到4 $i = rand(0,4);//随机生成一个0,到4之间的整形数字,包括0和4 echo $test[$i]; ?>
方法二:
把5个数组放入一个数组里,然后再用PHP自带的函数array_rand()获取
array_rand()函数,它可以从一个数组中随机取一个或者多个下标出来,有了下标,就可以从原数组拿到对应的元素了。
它的用法也很简单:array_rand($arr[, $num])
其中,$arr 是 要从中取元素的目标数组
$num 是 随机取下标的个数
其中第二个参数 $num 是可选的,默认为1 (通常不设该参数)。
注意:它的返回值在第二个参数大于 1 的时候是一个数组;当第二个参数不设或者传值 1 的时候是一个下标。
针对第二个参数传与不传值,又分为两种情况。代码如下:
1、第二个参数不传值的情况:
<?php
//$arr = Array(1,4,7,9,6); //PHP是区分大小写的,Array()需要写成array()才行,
$arr = array(1,4,7,9,6); $Key = array_rand($arr); //得到的$Key是个数 echo $arr[$Key]; //输出5个数的其中一个 ?>
2、第二个参数传值大于 1 的情况:
<?php $arr = array(1,4,7,9,6); $Key = array_rand($arr, 2); print_r($Key); //输出一个随机key的数组,即随机从$arr的所有key值中取出2个,“2”是随机取多少个key值的个数,可变 ?>