生成1-10之间的随机数,不重复。
方法一:用shuffle函数。
<?php $arr=range(1,10); shuffle($arr); foreach($arr as $values) { echo $values." "; } ?>
方法二:用array_unique函数.
<?php $arr=array(); while(count($arr)<10) { $arr[]=rand(1,10); $arr=array_unique($arr); } echo implode(" ",$arr); ?>
方法三:用array_flip函数,原理相同,都是去掉重复值。
<?php $arr=array(); $count1=0; $count = 0; $return = array(); while ($count < 10) { $return[] = mt_rand(1, 10); $return = array_flip(array_flip($return)); $count = count($return); } foreach($return as $value) { echo $value." "; } echo "<br/>"; $arr=array_values($return);// 获得数组的值 foreach($arr as $key) echo $key." "; ?>
上面有参考大牛的,谢谢他们无私的贡献源码。