使用srand和rand函数(php)创建唯一的随机数?

时间:2013-03-10 02:54:32

标签: php

此代码每秒创建一个新的随机数。

   srand(floor(time() / (1)));
   echo rand(0,5);

如何唯一地回应随机数(0-5),然后循环?

例如,我很想得到这样的序列:

1,5,4,3,2,1,4,5,3,2,5,4,1,2,3...

而不是:

2,2,1,4,3,4,5,5,5,5,5,1,2,3,4...

(只是为了澄清,第二个差距很重要,你可以假设每个页面加载之间有一秒钟的延迟。每个页面加载产生一个随机数)

1 个答案:

答案 0 :(得分:0)

你想摆脱像“2,2”和“5,5,5,5”这样的序列吗?只有当你在某个地方存储以前的号码时才有可能,例如在$ _SESSION superglobal var:

session_start();
$ran_num = rand(0, 5);
while ($ran_num == $_SESSION['ran_num']) {
    $ran_num = rand(0, 5);
}
$_SESSION['ran_num'] = $ran_num;
echo $ran_num;