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 相关文章推荐
用PHP实现维护文件代码
Jun 14 PHP
php 采集书并合成txt格式的实现代码
Mar 01 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
Aug 01 PHP
php mysql 判断update之后是否更新了的方法
Jan 10 PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 PHP
ThinkPHP中自定义错误页面和提示页面实例
Nov 22 PHP
PHP集成百度Ueditor 1.4.3
Nov 23 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
Feb 08 PHP
Yii实现复选框批量操作实例代码
Mar 15 PHP
PHP实现图片的等比缩放和Logo水印功能示例
May 04 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
May 04 PHP
PHP sdk实现在线打包代码示例
Dec 09 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 file_exists 检查文件或目录是否存在的函数
2010/05/10 PHP
深入php数据采集的详解
2013/06/02 PHP
php静态文件生成类实例分析
2015/01/03 PHP
php生成动态验证码gif图片
2015/10/19 PHP
PHP实现断点续传乱序合并文件的方法
2018/09/06 PHP
childNodes.length与children.length的区别
2009/05/14 Javascript
JavaScript isPrototypeOf和hasOwnProperty使用区别
2010/03/04 Javascript
JS常见问题整理(持续更新)
2013/08/06 Javascript
浅析JQuery中的html(),text(),val()区别
2014/09/01 Javascript
JQuery选择器、过滤器大整理
2015/05/26 Javascript
跟我学习javascript的基本类型和引用类型
2015/11/16 Javascript
JavaScript中对DOM节点的访问、创建、修改、删除
2015/11/16 Javascript
50 个 jQuery 插件可将你的网站带到另外一个高度
2016/04/26 Javascript
关于vuex的学习实践笔记
2017/04/05 Javascript
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
Angularjs上传文件组件flowjs功能
2017/08/07 Javascript
nodejs+express搭建多人聊天室步骤
2018/02/12 NodeJs
微信小程序页面缩放式侧滑效果的实现代码
2018/11/15 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
2020/08/15 Javascript
[01:07:02]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第三场 2月26日
2021/03/11 DOTA
Python中http请求方法库汇总
2016/01/06 Python
Python快速从注释生成文档的方法
2016/12/26 Python
Python 文件操作的详解及实例
2017/09/18 Python
Scrapy抓取京东商品、豆瓣电影及代码分享
2017/11/23 Python
python实现剪切功能
2019/01/23 Python
Python开启线程,在函数中开线程的实例
2019/02/22 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
澳洲本土太阳镜品牌:Quay Australia
2019/07/29 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
信用卡工资证明格式
2014/09/13 职场文书
2014年班主任工作总结
2014/11/08 职场文书
2014年生活老师工作总结
2014/12/23 职场文书
2015年学校教研室主任工作总结
2015/07/20 职场文书
Python中常见的反爬机制及其破解方法总结
2021/06/10 Python
Redis Lua脚本实现ip限流示例
2022/07/15 Redis