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

如题所述

php基础教程:用php随机生成不重复的数字。 ?php$num = 3;$start = 1;$end = 5;$connt = 0;while($connt$num){$a[]=rand($start,$end);//产生随机数$ary=array_unique($a);$connt=count($ary);}foreach ($ary as $key = $value){echo $value."br";} ? rand生成随机数字,为了保证不重复用了array_unique函数,提取数组中不重复的数字。 大家再看下,如果这样写: ?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的数值。
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜