PHP生成随机数的方法实例分析


Posted in PHP onJanuary 22, 2015

通常情况下,当我们要生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_rand()或rand()生成php随机数,从字符池中随机选取字符,最后拼凑出需要的长度。

function randomkeys($length)

{

$pattern = '1234567890abcdefghijklmnopqrstuvwxyz

ABCDEFGHIJKLOMNOPQRSTUVWXYZ,./&l

t;>?;#:@~[]{}-_=+)(*&^%$?!'; //字符池

for($i=0;$i<$length;$i++)

{

$key .= $pattern{mt_rand(0,35)}; //生成php随机数

}

return $key;

}

echo randomkeys(8);

这个php随机函数能生成XC*=z~7L这样的字符串,够随机!现在介绍另一种用PHP生成随机数的方法:利用chr()函数,省去创建字符池的步骤。

function randomkeys($length)

{

$output='';

for ($a = 0; $a < $length; $a++) {

$output .= chr(mt_rand(33, 126)); //生成php随机数

}

return $output;

}

echo randomkeys(8);

在第二个php随机函数里,先用mt_rand()生成一个介于33到126之间的php随机数,然后用chr()函数转化成字符。查看ascii码表就会发现,33到126代表的正是第一个函数中字符池里的所有字符。第二个函数和第一个函数功能相同,而且更简洁。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
在线短消息收发的程序,不用数据库
Oct 09 PHP
php录入页面中动态从数据库中提取数据的实现
Oct 09 PHP
一个PHP的String类代码
Apr 20 PHP
免费手机号码归属地API查询接口和PHP使用实例分享
Apr 10 PHP
smarty模板中使用get、post、request、cookies、session变量的方法
Apr 24 PHP
Codeigniter中mkdir创建目录遇到权限问题和解决方法
Jul 25 PHP
PHP实现即时输出、实时输出内容方法
May 27 PHP
php分割合并两个字符串的函数实例
Jun 19 PHP
PHP结合Mysql数据库实现留言板功能
Mar 04 PHP
PHP中OpenSSL加密问题整理
Dec 14 PHP
php生成二维码不保存服务器还有下载功能的实现代码
Aug 09 PHP
Yii框架日志操作图文与实例详解
Sep 09 PHP
9条PHP编程小知识及易犯的小错误
Jan 22 #PHP
PHP将HTML转换成文本的实现代码
Jan 21 #PHP
php使用Cookie控制访问授权的方法
Jan 21 #PHP
PHP+MySQL修改记录的方法
Jan 21 #PHP
PHP+MySQL删除操作实例
Jan 21 #PHP
PHP+MySQL插入操作实例
Jan 21 #PHP
php+mysql数据库查询实例
Jan 21 #PHP
You might like
十大感人催泪爱情动漫 第一名至今不忍在看第二遍
2020/03/04 日漫
php调用新浪短链接API的方法
2014/11/08 PHP
py文件转exe时包含paramiko模块出错解决方法
2016/08/12 PHP
浅析PHP7的多进程及实例源码
2019/04/14 PHP
关于JavaScript中var声明变量作用域的推断
2010/12/16 Javascript
js编码之encodeURIComponent使用介绍(asp,php)
2012/03/01 Javascript
浅谈javascript中call()、apply()、bind()的用法
2015/04/20 Javascript
Nodejs初级阶段之express
2015/11/23 NodeJs
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
详解Vue.js Mixins 混入使用
2017/09/15 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
详解ES6通过WeakMap解决内存泄漏问题
2018/03/09 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
Javascript操作select控件代码实例
2020/02/14 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
python发送告警邮件脚本
2018/09/17 Python
Python3+PyInstall+Sciter解决报错缺少dll、html等文件问题
2019/07/15 Python
python创建n行m列数组示例
2019/12/02 Python
Python图像阈值化处理及算法比对实例解析
2020/06/19 Python
Python ellipsis 的用法详解
2020/11/20 Python
CSS3解析抖音LOGO制作的方法步骤
2019/04/11 HTML / CSS
劳力士官方珠宝商:J.R. Dunn Jewelers
2018/09/29 全球购物
工艺工程师工作职责
2013/11/23 职场文书
好书伴我成长演讲稿
2014/05/14 职场文书
市贸粮局召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2014年化工厂工作总结
2014/11/25 职场文书
2014年高三班主任工作总结
2014/12/05 职场文书
布达拉宫导游词
2015/02/02 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
2015年度高中教师工作总结
2015/05/26 职场文书
2019单位介绍信怎么写
2019/06/24 职场文书
Python实战之实现康威生命游戏
2021/04/26 Python
python opencv通过按键采集图片源码
2021/05/20 Python
JavaScript的Set数据结构详解
2022/02/18 Javascript