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 相关文章推荐
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
Nov 18 PHP
php获取mysql数据库中的所有表名的代码
Apr 23 PHP
基于PHP Web开发MVC框架的Smarty使用说明
Apr 19 PHP
探讨php define()函数及defined()函数使用详解
Jun 09 PHP
探讨:web上存漏洞及原理分析、防范方法
Jun 29 PHP
ThinkPHP3.1基础知识快速入门
Jun 19 PHP
php中出现空白页的原因及解决方法汇总
Jul 08 PHP
服务器迁移php版本不同可能诱发的问题
Dec 22 PHP
Linux系统中为php添加pcntl扩展
Aug 28 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
Apr 02 PHP
PHP设计模式之 策略模式Strategy详解【对象行为型】
May 01 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
php中选择什么接口(mysql、mysqli)访问mysql
2013/02/06 PHP
PHP Curl出现403错误的解决办法
2014/05/29 PHP
jquery pagination插件实现无刷新分页代码
2009/10/13 Javascript
javascript调试之DOM断点调试法使用技巧分享
2014/04/15 Javascript
jQuery实现点击按钮文字变成input框点击保存变成文字
2016/05/09 Javascript
AngularJS延迟加载html template
2016/07/27 Javascript
JavaScript中关于for循环删除数组元素内容时出现的问题
2016/11/21 Javascript
详解jQuery插件开发方式
2016/11/22 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
详解tween.js 中文使用指南
2018/01/05 Javascript
Vue.js获取被选择的option的value和text值方法
2018/08/24 Javascript
vue配置接口域名方法总结
2019/05/12 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
2019/06/10 Javascript
中级前端工程师必须要掌握的27个JavaScript 技巧(干货总结)
2019/09/23 Javascript
浅谈Three.js截图并下载的大坑
2019/11/01 Javascript
Python中获取对象信息的方法
2015/04/27 Python
Python中import导入上一级目录模块及循环import问题的解决
2016/06/04 Python
Python将DataFrame的某一列作为index的方法
2018/04/08 Python
python 给DataFrame增加index行名和columns列名的实现方法
2018/06/08 Python
让你的Python代码实现类型提示功能
2019/11/19 Python
python plotly画柱状图代码实例
2019/12/13 Python
Python利用逻辑回归模型解决MNIST手写数字识别问题详解
2020/01/14 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
2020/04/23 Python
keras之权重初始化方式
2020/05/21 Python
改变 Python 中线程执行顺序的方法
2020/09/24 Python
CSS3实现酷炫的3D旋转透视效果
2019/11/21 HTML / CSS
意大利奢侈品购物网站:Giglio
2018/01/05 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
酒店开业庆典主持词
2014/03/21 职场文书
爱耳日宣传活动总结
2014/07/05 职场文书
企业党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
个人房屋买卖协议书(范本)
2014/10/04 职场文书
学校体育节班级口号
2015/12/25 职场文书
干货分享:推荐信写作技巧!
2019/06/21 职场文书
Java实现斗地主之洗牌发牌
2021/06/14 Java/Android
Tomcat项目启动失败的原因和解决办法
2022/04/20 Servers