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

yipeiwu_com6年前PHP代码库

PHP中rand()与mt_rand()都是用于产生一个指定范围内单独随机数的函数


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

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发邮件类

本文示例为大家分享了强大的PHP发邮件类,供大家参考,具体内容如下 <?php class smtp { var $smtp_port; var $time_out;...

保存到桌面、设为桌面且带图标的PHP代码

1.建立一个PHP文件,PHP的代码如下 保存到桌面、设为桌面的PHP代码 新建一个文件Desktopurl.php 代码如下: 复制代码 代码如下: <?php $Shortcu...

php strtotime 函数UNIX时间戳

如果 time 的格式是绝对时间则 now 参数不起作用。如果 time 的格式是相对时间则其所相对的时间由 now 提供,或者如果未提供 now 参数时用当前时间。失败时返回 -1。...

php检查日期函数checkdate用法实例

本文实例讲述了php检查日期函数checkdate用法。分享给大家供大家参考。具体分析如下: php中可以使用checkdate函数校验日期的正确性。 语法 integer che...

微信 开发生成带参数的二维码的实例

微信开发生成带参数的二维码的讲解 在微信公众号平台开发者那里,在“账号管理”那里,有一项功能是“生成带参数的二维码”,通过这儿生成的二维码,只要通过微信扫一扫之后,会把事件自动推送到微...