rand()和mt_rand()作用都是产生一个随机整数,都有两种使用形式:
1、int rand(void) / int mt_rand(void)
2、int rand(int $min, int $max) / int mt_rand($min, $max)
对第一种形式:
rand()产生的随机数为0到getrandmax()之间
mt_rand()产生的随机数为0到mt_getrandmax()之间
对第二种形式:
rand()产生从$min到$max之间的随机数
mt_rand()产生从$min到$max之间的随机数
对比:
mt_rand()是更好地随机数生成器,因为它跟rand()相比播下了一个更好地随机数种子;
而且mt_rand()性能上比rand()快4倍,mt_getrandmax()所表示的数值范围也更大;
PHP代码示例一:
- <?php
- echo $r=rand();
- echo '<br>';
- echo $mt=mt_rand();
结果:
27059
1751846843
PHP代码示例二:
- <?php
- for($i=1;$i<10;$i++){
- echo $r=rand(1,100).'-';
- }
- echo '<br>';
- for($i=1;$i<10;$i++){
- echo $mt=mt_rand(1,100).'-';
- }
结果:
53-58-2-69-73-27-52-56-21-
72-15-6-6-46-38-40-72-67-