函数名称中的“ mt”前缀代表Mersenne Twister。的mt_rand()函数返回使用梅森倍捻机随机数发生器的方法的整数。该函数是PHPrand()函数的直接替代。默认范围是0到平台特定的mt_getrandmax()。在64位Windows操作系统上,它是2147483647。可以在不带参数的情况下调用mt_rand()函数(在这种情况下,将使用默认范围)或通过指定min和max参数。
此函数始终返回整数。
mt_rand ( void ) : int mt_rand ( int $min , int $max ) : int
序号 | 参数及说明 |
---|---|
1 | min 要返回数字的范围的下限。默认是0 |
2 | max 从中返回数字的范围的上限。默认值为mt_ getrandmax() |
PHP mt_rand()函数使用Mersenne Twister随机数生成器技术返回介于min和max之间的整数。此函数的速度比rand()函数快四倍。请注意,不建议将其用于加密目的。
此功能在PHP 4.x,PHP 5.x和PHP 7.x中可用。
本示例通过不带参数的mt_rand()来返回随机数-
<?php echo "random number with no parameters mt_rand() = " . mt_rand() . "\n"; echo "another random number with no parameters mt_rand() = " . mt_rand() . "\n"; ?>
输出结果
这可能会产生以下结果(它是一个随机数,每次更可能返回不同的数)-
random number with no parameters mt_rand() = 173620951 another random number with no parameters mt_rand() = 749065865
以下示例为mt_rand()函数指定min和max参数-
<?php echo "mt_rand(11,30) = " . mt_rand(11,30) . "\n"; echo "mt_rand(11,30) = " . mt_rand(11,30) . "\n"; ?>
输出结果
这可能会产生以下结果(它是一个随机数,每次更可能返回不同的数)-
mt_rand(11,30) = 24 mt_rand(11,30) = 14
最小和最大参数的浮点数的小数部分将被忽略-
<?php echo "mt_rand(10.5,50.95) = " . mt_rand(10.55, 50.95) . "\n"; ?>
输出结果
这可能会产生以下结果-
mt_rand(10.5,50.95) = 31