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 相关文章推荐
基于mysql的bbs设计(四)
Oct 09 PHP
DedeCms模板安装/制作概述
Mar 11 PHP
Uchome1.2 1.5 代码学习 common.php
Apr 24 PHP
php下关于中英数字混排的字符串分割问题
Apr 06 PHP
解析PHP的session过期设置
Jun 29 PHP
codeigniter教程之上传视频并使用ffmpeg转flv示例
Feb 13 PHP
PHP字符串中特殊符号的过滤方法介绍
Feb 18 PHP
PHP错误和异长常处理总结
Mar 06 PHP
smarty内置函数{loteral}、{ldelim}和{rdelim}用法实例
Jan 22 PHP
php实现二进制和文本相互转换的方法
Apr 18 PHP
PHP输出图像imagegif、imagejpeg与imagepng函数用法分析
Nov 14 PHP
php文件管理基本功能简单操作
Jan 16 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
thinkphp3查询mssql数据库乱码解决方法分享
2014/02/11 PHP
yii框架通过控制台命令创建定时任务示例
2014/04/30 PHP
php设置静态内容缓存时间的方法
2014/12/01 PHP
php socket通信(tcp/udp)实例分析
2016/02/14 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
Aster vs KG BO3 第一场2.18
2021/03/10 DOTA
JavaScript 比较时间大小的代码
2010/04/24 Javascript
jquery $.trim()方法使用介绍
2014/05/21 Javascript
jQuery简易图片放大特效示例代码
2014/06/09 Javascript
当前流行的JavaScript代码风格指南
2014/09/10 Javascript
Javascript检查图片大小不要让大图片撑破页面
2014/11/04 Javascript
javascript生成大小写字母
2015/07/03 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
JS正则表达式学习之贪婪和非贪婪模式实例总结
2016/12/26 Javascript
JS数组返回去重后数据的方法解析
2017/01/03 Javascript
基于AngularJS的简单使用详解
2017/09/10 Javascript
JS库之ParticlesJS使用简介
2017/09/12 Javascript
JS动态插入脚本和插入引用外部链接脚本的方法
2018/05/21 Javascript
详解几十行代码实现一个vue的状态管理
2019/01/28 Javascript
vue工程全局设置ajax的等待动效的方法
2019/02/22 Javascript
python 文件和路径操作函数小结
2009/11/23 Python
使用Python脚本来控制Windows Azure的简单教程
2015/04/16 Python
Python赋值语句后逗号的作用分析
2015/06/08 Python
浅谈python 导入模块和解决文件句柄找不到问题
2018/12/15 Python
理想高通滤波实现Python opencv示例
2019/01/30 Python
Python自动采集微信联系人的实现示例
2020/02/28 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
南非最大的花卉和送礼服务:NetFlorist
2017/09/13 全球购物
施华洛世奇西班牙官网:SWAROVSKI西班牙
2019/06/06 全球购物
大学生职业生涯规划书前言
2014/01/09 职场文书
采购意向书范本
2014/03/31 职场文书
学习保证书范文
2014/04/30 职场文书
2016教师政治学习心得体会
2016/01/23 职场文书
用python删除文件夹中的重复图片(图片去重)
2021/05/12 Python
Windows下redis下载、redis安装及使用教程
2021/06/02 Redis
Logback 使用TurboFilter实现日志级别等内容的动态修改操作
2021/08/30 Java/Android