|
<?php
//0-9 10数,取任意5个,且不能有相同数出现
$num = 5;//要产生多少个随机数;
$start = 0;//随机数起始位置,
$end = 9;//随机数结束位置
$connt = 0;
while($connt<$num)
{
$a[]=rand($start,$end);//产生随机数
$ary=array_unique($a);//遍历数组$a,如有相同的值则剔除该值
$connt=count($ary);
}
foreach ($ary as $key => $value)
{
echo "<br />".$value;
}
?>
51CTO论坛得到一段代码,感觉不错,也发出来大家共享:
<?
$arr=array();
while(count($arr)<5){
$a=rand(1,10);
if(!in_array($a,$arr)){
$arr[]=$a;
}
}
echo '<pre>';
print_r($arr);
echo '</pre>'
?>
51OTC主版主回贴:
如果要保留的数超过50%的话,可以换个思路,把所有的数先保存到数组中,然后挨个往外踢,直到剩下的数符合要求为止。
版权声明:本文为博主原创文章,未经博主允许不得转载。 |
|
|