在PHP项目中,
不同的项目中,
随机数都是经常用到的,
所以,
对于PHP如何产生不重复随机数,
有五种常用方法,
下面我们进行小结一下吧

方法一

 
  1. $numbers = range (1,50); //shuffle 将数组顺序随即打乱   
  2. shuffle ($numbers); //array_slice 取该数组中的某一段   
  3. $num=6;   
  4. $result = array_slice($numbers,0,$num); //截取数组  
  5. var_dump($result);  

方法二

 
  1. $numbers = range (1,20);   
  2. srand ((float)microtime()*‪1000000‬); //本函数传入参数后,配置随机数的种子。本例加入时间的因素,以执行时的百万分之一秒当随机数种子  
  3. shuffle ($numbers);   
  4. while (list($key$number) = each ($numbers)) {   
  5. echo "$number "; }  

方法三

 
  1. /*$bengin-$end间随机产生5个不重复的值*/  
  2. function getRand($begin=0,$end=20,$limit=5){   
  3. $rand_array=range($begin,$end);   
  4. shuffle($rand_array);  
  5. return array_slice($rand_array,0,$limit);  
  6. }   
  7. print_r(getRand());  

方法四

 
  1. $tmp=array();   
  2. while(count($tmp)<5){   
  3. $tmp[]=mt_rand(1,20);  
  4. $tmp=array_unique($tmp);  
  5. //去重  
  6. }   
  7. var_dump($tmp);  

方法五

 
  1. $tmp = range(1,30);  
  2. print_r(array_rand($tmp,10));  

教程结束

祝大家好运