通过PHP随机数生成“当天的词”

时间:2011-07-25 11:48:02

标签: php math random numbers

我遇到了一个小问题,并且不想为随机数生成我自己的算法。

我要在网站上显示“当天的话语”,它每天只需更改一次,所有数据都以XML格式存储。在页面加载时,我通过php中的simpleXml Parser读取xml文件,然后在0,数组长度之间生成一个随机数,并输出一个术语+定义。

但是我不希望它随着每次刷新而改变,我也不想将它保存在数据库中的服务器上。

那么如何生成0到N之间的随机数,这个值在24小时内给出相同的值。

4 个答案:

答案 0 :(得分:10)

只需将当前日期设置为种子,无需小时,分钟和秒。

srand(mktime(0, 0, 0));
$wordIndex = rand(0, $wordCount);

它将在一天内返回相同的数字。

答案 1 :(得分:6)

选项1:没有随机数,只需每天增加一个索引。它看起来很随机,因为没有人知道你的文件。如果这还不够好,请随机输入输入文件(将其重新播放一次并再次将其安全保存)。

选项2:使用今天的日期作为随机数生成器的种子。

答案 2 :(得分:2)

<?
  srand(date("ymd"));
  echo rand();
?>

答案 3 :(得分:0)

如果您不想存储它,请使用与日常周期相关的内容,例如日期或工作日。