hi,欢迎访问本站!
当前位置: 首页编程开发正文

php生成多个不重复的随机数

墨初 编程开发 402阅读

使用php脚本可以很轻松的获取一个指定范围内的随机数,但是想要获取指定范围内多个不重复的随机数该如何做呢?下面就介绍了几种方法,非常的简单。

php 取多个不重复的随机数

方法1:

php利用数组的方法取多个不重复的随机数

// 生成一个数组
$numbers = range (50,100); 
//shuffle 将数组顺序随即打乱 
shuffle ($numbers); 
$num = 6; //指定获取随机数的数量 
$result = array_slice($numbers,0,$num); 
foreach ($result as $a) {
     echo $a.'  ';
}
// 66 75 85 92 56 52

方法2:

同样使用数组的方法取随机输,但与上面打乱数组方法不同的是,这里是利用 array_rand 函数随机获取数组的下标来换取随机数!

# 73so.com
$tmp = range(50,100);
$arr = array_rand($tmp,10);
foreach ($arr as $a) {
     echo $tmp[$a].'  ';
}

方法3:

下面的方法比较简单,适合取值范围比较大的场景。

$tmp = array(); 
while(count($tmp)<5){ 
     $tmp[] = mt_rand(1,20); //规定随机数的取值范围
     $tmp = array_unique($tmp); 
} 
foreach ($tmp as $a) {
     echo $a.'  ';
}
声明:无特别说明,转载请标明本文来源!
相关推荐