视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
php生成不重复的随机数方法
2020-11-27 15:20:29 责编:小采
文档


这个没什么好废话的;直奔主题来说思路;

首先是要用mt_rand()函数生成指定个数的随机数字;

然后使用array_unique()函数去重;(推荐学习:PHP编程从入门到精通)

因为去重了;所以得到的数字就不够指定个数了;

所以,核心是要用while循环;直到得到指定个数的数字;

到这里基本可以是结束了;

对于追求完美的人来说;还可以再用个sort();

目的不是要用来排序;主要是将得到的数组key格式化;

用代码来说话;就如下;

/**
 * 生成不重复的随机数
 * @param int $start 需要生成的数字开始范围
 * @param int $end 结束范围
 * @param int $length 需要生成的随机数个数
 * @return array 生成的随机数
 */
function get_rand_number($start=1,$end=10,$length=4){
 $connt=0;
 $temp=array();
 while($connt<$length){
 $temp[]=mt_rand($start,$end);
 $data=array_unique($temp);
 $connt=count($data);
 }
 sort($data);
 return $data;
}

下载本文
显示全文
专题