这个没什么好废话的;直奔主题来说思路;
首先是要用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; }
以上就是php生成不重复的随机数方法的详细内容,更多请关注php中文网其它相关文章!
声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
- 上一篇:php实现中文字符串截取无乱码
- 下一篇:php如何安装新模块
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论