用php随机生成不重复的数字

<?php

$num = 3;
$start = 1;
$end = 5;
$connt = 0;
while($connt<$num)
{
$a[]=rand($start,$end);//产生随机数
$ary=array_unique($a);
$connt++;
}
foreach ($ary as $key => $value)
{
echo $value.”<br>”;
}
?>

因为rand函数可能产生重复的数,比如随机产生了三个数1,2,2,那么通过array_unique函数只提取1,2两个数,则会只生成随机的两位数。

所以本代码关键部分在于:条件语句while以及$connt=count($ary)的使用,只有当array_unique提取了不重复的三位数才结束,最终得到随机的数字。

大家如果想得到随机的几位数字只要修改$num,修改取值范围只要修改$start和$end的数值。

此条目发表在PHP分类目录,贴了标签。将固定链接加入收藏夹。