LaneBlog

蝼蚁虽小,也有梦想

PHP Socket服务 | PHP微信开发框架 | 开源博客

PHP 时间种子 批量 随机数

Clicks: 2089 Date: 2014-03-07 11:22:34 Power By 李轩Lane

    PHP时间种子批量随机数。本文说明PHP如何用时间种子批量生成随机数。
PHP函数mt_rand()和rand()会在批量生成的时候是会有几率出现重复的随机数。srand()和mt_srand()在PHP4.1开始已经不在显式调用了,在mt_rand和rand的时候会自动生成种子。因为,在批量随机的时候,我们自己显式条用生成种子,就可以避免重复。为什么呢?因为种子不一样了呀。种子为什么不一样了呢?因为他是时间种子。
<?php
//存储生存的随机数
$randArr = array();
//生成十万个吧
for($i=0;$i<100000;$i++){
    //生成种子
    $date = explode(' ', microtime());
    $seed = $date[0];
    //种子发生器
    mt_srand($seed);
    //生成随机数
    $randArr[] = mt_rand();
}
?>
随机数生成了。并且不会重复的哦。以时间为种子的好处就是省略了在普通的伪随机数会出现重复的情况时进行do{生成随机数code}while(!isset(新生成的一个随机数))的判断步骤。
©2014 www.lanecn.com , All rights reserved. Power By Li Xuan.  京ICP备14005030号