在PHP函数rand和mt_rand差异
PHP函数RAND和mt_randU3000 U3000
mt_rand()比兰德的速度快四倍()
U3000 U3000
许多老的libc的随机数发生器有一些不确定的和未知的特点,非常慢。RAND()函数的PHP使用libc的随机数发生器默认情况下,mt_rand()函数用于非正式地代替它。这个函数使用性能Mersenne Twister称为随机数发生器。mt_rand()可以生成随机值与平均速度快四倍的速度比libc(兰德)。
U3000 U3000
mt_rand()比兰德的速度快四倍()
U3000 U3000
mt_rand产生更好的随机数
U3000 U3000
(PHP > = 3.0.6 3,PHP 4,PHP 5)
U3000 U3000
国际mt_rand({ int min,int max })
U3000 U3000
许多老的libc的随机数发生器有一些不确定的和未知的特点,非常慢。RAND()函数的PHP使用libc的随机数发生器默认情况下,mt_rand()函数用于非正式地代替它。这个函数使用Mersenne Twister(马齐赛旋转)的特点,被称为一个随机数发生器,平均速度可以产生随机数的libc比兰德(四倍)。
U3000 U3000
如果可选的参数min和马克斯都不提供,mt_rand()返回
U3000 U3000
0、rand_max之间的伪随机数。
U3000 U3000
例如,我们想要一个5到15之间的随机数(包括5和15),使用mt_rand(5, 15)。
U3000 U3000
注:从PHP 4.2.0,它不再需要使用srand()或()函数mt_srand播种的随机数发生器,它现在是自动完成。
U3000 U3000
产生随机整数
U3000 U3000
(PHP 3,PHP 4,PHP 5)
U3000 U3000
Int rand({ min,int max })
U3000 U3000
如果可选的参数min和马克斯都不提供,伦德()返回0,rand_max.for实例之间的伪随机整数,我们想要一个5到15之间的随机数(包括5和15),使用兰德(5, 15)。
U3000 U3000
注:在某些平台(如Windows)rand_max只有32768。如果要求的范围是大于32768,指定最小和马克斯参数可以产生超过rand_max,或考虑mt_rand()代替。
U3000 U3000
注:从PHP 4.2.0,它不再需要使用srand()或()函数mt_srand播种的随机数发生器,它现在是自动完成。
mt_rand的定义和用法
mt_rand()使用Mersenne Twister算法返回的随机整数。
语法
mt_rand(min,max)描述
如果可选的参数min和马克斯都不提供,mt_rand()返回0,rand_max.for实例之间的伪随机数,我们想要一个5到15之间的随机数(包括5和15),使用mt_rand(5, 15)。
许多老的libc的随机数发生器有一些不确定的和未知的特点,非常慢。RAND()函数的PHP使用libc的随机数发生器默认情况下,mt_rand()函数用于非正式地代替它。这个函数使用性能Mersenne Twister称为随机数发生器。它可以生成随机值与平均速度快四倍的速度比libc(兰德)。
提示和注释
注:从PHP 4.2.0,不再需要使用srand()或()函数mt_srand播种的随机数发生器,并已自动完成。
注:在3.0.7以前的版本中,马克斯的意思是范围,涉足这些版本和相同的随机数5到15,一个简单的例子是mt_rand(5, 11)。
例子
在这种情况下,我们返回一些随机数:
复制代码代码如下所示:
< PHP
回声(mt_rand());
回声(mt_rand());
回声(mt_rand(10100));
>
输出相似:
三十一亿五千零九十万六千二百八十八
五亿一千三百二十八万九千六百七十八
三十五