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 if (PHP_SAPI != 'cli') { exit('Pl...

PHP实现时间日期友好显示实现代码

系统的友好性在开发过程中是非常重要的,一个系统非常友好不光可以带给用户非常棒的使用体验,而且还可以使系统有这更长的寿命。今天这篇博文主要来展示一个我们如何让日期时间更加友好的显示。 下面...

解析php中var_dump,var_export,print_r三个函数的区别

下面的示例看看这三个函数的具体的区别,其中var_dump和var_export比较少用,但他们两者又很相似。所以可以看看:复制代码 代码如下:<?php$a = array(1,...

php简单开启gzip压缩方法(zlib.output_compression)

php简单开启gzip压缩方法(zlib.output_compression)

一般而言,页面文件开启gzip压缩以后,其体积可以减小60%~90%,对于文字类站点,可以节省下大量的带宽与用户等待时间。但是不论是iis还是apache默认都只压缩html类静态文件,...

php商品对比功能代码分享

php商品对比功能代码分享

下面是自己亲自动手编写的代码,和大家一起学习研究。 商品对比调用的JS文件(包含了商品对比框浮动JS): /*浮动窗口*/ (function(){ var n=10...