zl程序教程

您现在的位置是:首页 >  其他

当前栏目

PHPn个不重复的随机数生成代码

代码 生成 重复 随机数
2023-06-13 09:14:10 时间
复制代码代码如下:

<?php
//range是将1到100列成一个数组
$numbers=range(1,100);
//shuffle将数组顺序随即打乱
shuffle($numbers);
//array_slice取该数组中的某一段
$no=6;
$result=array_slice($numbers,0,$no);
for($i=0;$i<$no;$i++){
echo$result[$i]."<br>";
}
print_r($result);
?>

复制代码代码如下:

//range是将1到42列成一个数组
$numbers=range(1,42);
//shuffle将数组顺序随即打乱
shuffle($numbers);
//array_slice取该数组中的某一段
$result=array_slice($numbers,0,3);
print_r($result);

方法2
复制代码代码如下:
<?php
$numbers=range(1,20);
srand((float)microtime()*1000000);
shuffle($numbers);
while(list(,$number)=each($numbers)){
echo"$number";
}
?>
方法3
用PHP,在1-20间随机产生5个不重复的值,如何做
复制代码代码如下:
<?php
functionNoRand($begin=0,$end=20,$limit=5){
$rand_array=range($begin,$end);
shuffle($rand_array);//调用现成的数组随机排列函数
returnarray_slice($rand_array,0,$limit);//截取前$limit个
}
print_r(NoRand());
?>

或者不shuffle的话
复制代码代码如下:
<?php
$tmp=array();
while(count($tmp)<5){
$tmp[]=mt_rand(1,20);
$tmp=array_unique($tmp);
}
printjoin(",",$tmp);
?>