php生成随机数的三种方法


Posted in PHP onSeptember 10, 2014

如何用php生成1-10之间的不重复随机数?

例1,使用shuffle函数生成随机数。

<?php
$arr=range(1,10);
shuffle($arr);
foreach($arr as $values)
{
 echo $values." ";
}
?>

例2,使用array_unique函数生成随机数。

<?php
$arr=array();
while(count($arr)<10)
{
 $arr[]=rand(1,10);
 $arr=array_unique($arr);
}
echo implode(" ",$arr);
?>

例3,使用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);
 } //3water.com
foreach($return as $value)
 {
 echo $value." ";
 }
echo "<br/>";
$arr=array_values($return);// 获得数组的值 
foreach($arr as $key)
echo $key." ";
?>

php随机数生成函数示例

<?php
function randpw($len=8,$format='ALL'){
$is_abc = $is_numer = 0;
$password = $tmp =''; 
switch($format){
case 'ALL':
$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
break;
case 'CHAR':
$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
break;
case 'NUMBER':
$chars='0123456789';
break;
default :
$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
break;
} // 3water.com
mt_srand((double)microtime()*1000000*getmypid());
while(strlen($password)<$len){
$tmp =substr($chars,(mt_rand()%strlen($chars)),1);
if(($is_numer <> 1 && is_numeric($tmp) && $tmp > 0 )|| $format == 'CHAR'){
$is_numer = 1;
}
if(($is_abc <> 1 && preg_match('/[a-zA-Z]/',$tmp)) || $format == 'NUMBER'){
$is_abc = 1;
}
$password.= $tmp;
}
if($is_numer <> 1 || $is_abc <> 1 || empty($password) ){
$password = randpw($len,$format);
}
return $password;
}
for($i = 0 ; $i < 10; $i++){
echo randpw(8,'NUMBER');
echo "<br>";
}
PHP 相关文章推荐
手把手教你使用DedeCms V3的在线采集图文教程
Apr 03 PHP
ie6 动态缩略图不显示的原因
Jun 21 PHP
PHP 实现explort() 功能的详解
Jun 20 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
Nov 26 PHP
smarty获得当前url的方法分享
Feb 14 PHP
ThinkPHP分页实例
Oct 15 PHP
php实现的用户查询类实例
Jun 18 PHP
php导出中文内容excel文件类实例
Jul 06 PHP
PHP 7的一些引人注目的新特性简单介绍
Nov 08 PHP
PHP生成短网址方法汇总
Jul 12 PHP
php版微信公众平台接口开发之智能回复开发教程
Sep 22 PHP
PHP开发api接口安全验证操作实例详解
Mar 26 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
Sep 10 #PHP
初识php MVC
Sep 10 #PHP
叫你如何修改Nginx与PHP的文件上传大小限制
Sep 10 #PHP
QQ互联一键登录审核不通过的解决方案
Sep 10 #PHP
PHP curl 抓取AJAX异步内容示例
Sep 09 #PHP
php通过隐藏表单控件获取到前两个页面的url
Sep 09 #PHP
PHP利用MySQL保存session的实现思路及示例代码
Sep 09 #PHP
You might like
php页码形式分页函数支持静态化地址及ajax分页
2014/03/28 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
简单的php购物车代码
2020/06/05 PHP
User Scripts: Video Download by User Scripts
2007/05/14 Javascript
JavaScript 语言基础知识点总结(思维导图)
2013/11/10 Javascript
jQuery中$.each使用详解
2015/01/29 Javascript
jQuery结合CSS制作漂亮的select下拉菜单
2015/05/03 Javascript
js实现从右向左缓缓浮出网页浮动层广告的方法
2015/05/09 Javascript
浅谈js中对象的使用
2016/08/11 Javascript
深入探究node之Transform
2017/07/20 Javascript
打字效果动画的4种实现方法(超简单)
2017/10/18 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
AngularJS中ng-options实现下拉列表的数据绑定方法
2018/08/13 Javascript
Vue 2.0 侦听器 watch属性代码详解
2019/06/19 Javascript
移动端吸顶fixbar的解决方案详解
2019/07/17 Javascript
vue项目使用.env文件配置全局环境变量的方法
2019/10/24 Javascript
Vue axios与Go Frame后端框架的Options请求跨域问题详解
2020/03/03 Javascript
基于vue 动态菜单 刷新空白问题的解决
2020/08/06 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
python学习笔记:字典的使用示例详解
2014/06/13 Python
Python设计模式之中介模式简单示例
2018/01/09 Python
Go/Python/Erlang编程语言对比分析及示例代码
2018/04/23 Python
python计算两个矩形框重合百分比的实例
2018/11/07 Python
详解python项目实战:模拟登陆CSDN
2019/04/04 Python
Python实现快速排序的方法详解
2019/10/25 Python
Python实现CNN的多通道输入实例
2020/01/17 Python
澳大利亚和新西兰最大的在线旅行社之一:Aunt Betty
2019/08/07 全球购物
连锁酒店店长职责范本
2014/02/13 职场文书
聘任书模板
2014/03/29 职场文书
校优秀毕业生主要事迹
2014/05/26 职场文书
教师求职简历自我评价
2015/03/10 职场文书
2015年毕业生个人自荐书
2015/03/24 职场文书
《角的初步认识》教学反思
2016/02/17 职场文书
CSS预处理框架——Stylus
2021/04/21 HTML / CSS
React四级菜单的实现
2022/04/08 Javascript