PHP随机数函数rand()与mt_rand()的讲解


Posted in PHP onMarch 25, 2019

PHP中rand()与mt_rand()都是用于产生一个指定范围内单独随机数的函数,如果需要产生多个不重复的随机数,请参考:PHP生成指定范围内的N个不重复的随机数。

既然他们都是用于产生一个随机数,那么他们有什么区别呢?

rand() 函数默认使用 libc 随机数发生器,很多老的 libc 的随机数发生器具有一些不确定和未知的特性而且效率很低;mt_rand() 则是用了 Mersenne Twister 中已知的特性作为随机数发生器,它产生随机数值的平均速度比 libc 提供的 rand() 快四倍。所以在PHP中mt_rand()函数是非正式用来替换rand()的。

语法:

rand(min,max)
mt_rand(min,max)

min,max 皆为可选,规定随机数产生的范围。

如果没有提供可选参数 min 和 max,则返回 0 到 RAND_MAX 之间的伪随机整数。例如,想要 1 到 100(包括 1 和 100)之间的随机数,用 rand(1, 100) 或 mt_rand(1,100)。

注: 自 PHP 4.2.0 起,PHP产生随机数都不再需要用 srand() 或 mt_srand() 函数产生随机种子,已经会自动完成。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
PHPMailer 中文使用说明小结
Jan 22 PHP
使用php实现截取指定长度
Aug 06 PHP
php中怎么搜索相关联数组键值及获取之
Oct 17 PHP
destoon会员注册提示“数据校验失败(2)”解决方法
Jun 21 PHP
ThinkPHP实现批量删除数据的代码实例
Jul 02 PHP
取得单条网站评论以数组形式进行输出
Jul 28 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
Mar 01 PHP
CodeIgniter常用知识点小结
May 26 PHP
阿里云PHP SMS短信服务验证码发送方法
Jul 11 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
php微信开发之谷歌测距
Jun 14 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
Aug 11 PHP
php微信扫码支付 php公众号支付
Mar 24 #PHP
PHP实现支持CURL字符串证书传输的方法
Mar 23 #PHP
详解PHP变量传值赋值和引用赋值变量销毁
Mar 23 #PHP
laravel实现按时间日期进行分组统计方法示例
Mar 23 #PHP
PHP使用OB缓存实现静态化功能示例
Mar 23 #PHP
Laravel如何自定义command命令浅析
Mar 23 #PHP
PHP使用mysqli同时执行多条sql查询语句的实例
Mar 22 #PHP
You might like
德生PL330测评
2021/03/02 无线电
PHP 采集程序原理分析篇
2010/03/05 PHP
php用xpath解析html的代码实例讲解
2019/02/14 PHP
PhpSpreadsheet设置单元格常用操作汇总
2020/11/13 PHP
SyntaxHighlighter代码加色使用方法
2008/09/07 Javascript
Js如何判断客户端是PC还是手持设备简单分析
2012/11/22 Javascript
JS图像无缝滚动脚本非常好用
2014/02/10 Javascript
jquery实现ajax提交form表单的方法总结
2014/03/03 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
2015/06/04 Javascript
javascript基本算法汇总
2016/03/09 Javascript
JS延时器提示框的应用实例代码解析
2016/04/27 Javascript
一次$.getJSON不执行的简单记录
2016/07/19 Javascript
全面解析Bootstrap表单样式的使用
2016/09/09 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
2017/01/03 Javascript
js实现移动端编辑添加地址【模仿京东】
2017/04/28 Javascript
完美解决iview 的select下拉框选项错位的问题
2018/03/02 Javascript
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
[37:23]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第二局
2016/03/04 DOTA
[03:02]2020完美世界城市挑战赛(秋季赛)总决赛回顾
2021/03/11 DOTA
Python常用列表数据结构小结
2014/08/06 Python
举例讲解Python中的Null模式与桥接模式编程
2016/02/02 Python
Sublime开发python程序的示例代码
2018/01/24 Python
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
简单了解Python多态与属性运行原理
2020/06/15 Python
CSS3中border-radius属性设定圆角的使用技巧
2016/05/10 HTML / CSS
时尚的CSS3进度条效果
2012/02/22 HTML / CSS
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
2013/01/06 HTML / CSS
法国高保真音响和家庭影院商店:Son Video
2019/04/26 全球购物
写出SQL四条最基本的数据操作语句(DML)
2012/12/12 面试题
利用promise及参数解构封装ajax请求的方法
2021/03/24 Javascript
会计顶岗实习心得
2014/01/25 职场文书
购房协议书范本
2014/04/11 职场文书
2015年推广普通话演讲稿
2015/03/20 职场文书
使用pandas模块实现数据的标准化操作
2021/05/14 Python
CentOS7和8下安装Maven3.8.4
2022/04/07 Servers
Spring Data JPA框架的核心概念和Repository接口
2022/04/28 Java/Android