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 相关文章推荐
IIS+PHP+MySQL+Zend配置 (视频教程)
Dec 13 PHP
php简单静态页生成过程
Mar 27 PHP
php 删除记录同时删除图片文件的实现代码
May 12 PHP
PHP中将数组转成XML格式的实现代码
Aug 08 PHP
在smarty中调用php内置函数的方法
Feb 07 PHP
fetchAll()与mysql_fetch_array()的区别详解
Jun 05 PHP
sql注入与转义的php函数代码
Jun 17 PHP
解析mysql中UNIX_TIMESTAMP()函数与php中time()函数的区别
Jun 24 PHP
带密匙的php加密解密示例分享
Jan 29 PHP
Yii 2.0如何使用页面缓存方法示例
May 23 PHP
PHP自动生成缩略图函数的源码示例
Mar 18 PHP
php使用自带dom扩展进行元素匹配的原理解析
May 29 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
使用tp框架和SQL语句查询数据表中的某字段包含某值
2019/10/18 PHP
一文看懂PHP进程管理器php-fpm
2020/06/01 PHP
收藏Javascript中常用的55个经典技巧
2007/08/12 Javascript
学习从实践开始之jQuery插件开发 菜单插件开发
2012/05/03 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
2015/08/24 Javascript
AngularJS入门教程之Scope(作用域)
2016/07/27 Javascript
js原生跨域_用script标签的简单实现
2016/09/24 Javascript
使用jquery如何获取时间
2016/10/13 Javascript
给easyui datebox扩展一个清空的实例
2016/11/09 Javascript
vue2.0使用Sortable.js实现的拖拽功能示例
2017/02/21 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
docker中编译nodejs并使用nginx启动
2017/06/23 NodeJs
Bootstrap datepicker日期选择器插件使用详解
2017/07/26 Javascript
jQuery实现简单的计时器功能实例分析
2017/08/29 jQuery
详解JavaScript中的六种错误类型
2017/09/21 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
2017/09/28 Javascript
详解webpack模块加载器兼打包工具
2018/09/11 Javascript
vue如何根据网站路由判断页面主题色详解
2018/11/02 Javascript
微信小程序实现多选删除列表数据功能示例
2019/01/15 Javascript
详解javascript中的Error对象
2019/04/25 Javascript
在Python中使用base64模块处理字符编码的教程
2015/04/28 Python
Python基于回溯法子集树模板解决0-1背包问题实例
2017/09/02 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
2018/03/13 Python
opencv python图像梯度实例详解
2020/02/04 Python
Python程序慢的重要原因
2020/09/04 Python
程序设计HTML5 Canvas API
2013/04/08 HTML / CSS
俄罗斯女装店:12storeez
2019/10/25 全球购物
英国Iceland杂货店:网上食品购物
2020/12/16 全球购物
linux面试题参考答案(6)
2016/06/23 面试题
房产继承公证书
2014/04/09 职场文书
小学作文评语大全
2014/04/21 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
项目经理岗位职责
2015/01/31 职场文书
青年教师听课心得体会
2016/01/15 职场文书
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP
如何使用SQL Server语句创建表
2022/04/12 SQL Server