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 相关文章推荐
php header功能的使用
Oct 28 PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 PHP
php实现通用的从数据库表读取数据到数组的函数实例
Mar 21 PHP
PHP生成json和xml类型接口数据格式
May 17 PHP
PHP+MySQL实现的简单投票系统实例
Feb 24 PHP
PHP中in_array函数使用的问题与解决办法
Sep 11 PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 PHP
PHP magento后台无法登录问题解决方法
Nov 24 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
Laravel框架处理用户的请求操作详解
Dec 20 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
Feb 27 PHP
php 文件上传至OSS及删除远程阿里云OSS文件
Jul 04 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
php连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
php绘图之加载外部图片的方法
2015/01/24 PHP
PHP符合PSR编程规范的实例分享
2016/12/21 PHP
PHP实现的XXTEA加密解密算法示例
2018/08/28 PHP
PHP5.5新特性之yield理解与用法实例分析
2019/01/11 PHP
firefox下frameset取不到值的解决方法
2010/09/06 Javascript
JQuery 选择器、过滤器介绍
2011/02/14 Javascript
12种不宜使用的Javascript语法整理
2013/11/04 Javascript
JS循环遍历JSON数据的方法
2014/07/08 Javascript
WebGL利用FBO完成立方体贴图效果完整实例(附demo源码下载)
2016/01/26 Javascript
学习javascript文件加载优化
2016/02/19 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
微信小程序tabBar 返回tabBar不刷新页面
2019/07/25 Javascript
基于Node的Axure文件在线预览的实现代码
2019/08/28 Javascript
微信小程序 搜索框组件代码实例
2019/09/06 Javascript
详解C++编程中一元运算符的重载
2016/01/19 Python
Python算法应用实战之栈详解
2017/02/04 Python
python实现k-means聚类算法
2018/02/23 Python
django ajax json的实例代码
2018/05/29 Python
python多线程调用exit无法退出的解决方法
2019/02/18 Python
pyqt5对用qt designer设计的窗体实现弹出子窗口的示例
2019/06/19 Python
Flask配置Cors跨域的实现
2019/07/12 Python
Python动态强类型解释型语言原理解析
2020/03/25 Python
Python读取JSON数据操作实例解析
2020/05/18 Python
tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解
2020/06/03 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
2020/11/15 Python
Python3爬虫ChromeDriver的安装实例
2021/02/06 Python
Data URI scheme详解和使用实例及图片base64编码实现方法
2014/05/08 HTML / CSS
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
Koral官方网站:女性时尚运动服
2019/04/10 全球购物
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
女方家长婚礼致辞
2015/07/27 职场文书
python实现图片批量压缩
2021/04/24 Python
Vue自定义铃声提示音组件的实现
2022/01/22 Vue.js
直播实况, OMG破敌三路五十分钟大战神技局摩托车
2022/04/01 DOTA
AJAX引擎原理以及XmlHttpRequest对象的axios、fetch区别详解
2022/04/09 Javascript