【问题标题】:Random Link PHP with Time随时间随机链接 PHP
【发布时间】:2014-04-24 20:30:43
【问题描述】:

我在 stackoverflow 上有这段代码:

    <?php
$links = array(array('url' => 'http://google.com', 'name'=>'google'),
               array('url' => 'http://hotmail.com', 'name' => 'hotmail'),
               array('url' => 'http://hawkee.com', 'name' => 'Hawkee'));
$num = array_rand($links);
$item = $links[$num];

printf('<a href="%s" title="%s">%s</a>', $item['url'], $item['name'], $item['name']);
?>

此代码显示一个随机链接。 我想为每个链接添加时间,在切换到下一个链接 1 后 24 小时,在 24 小时后切换到链接 2 并对链接 3 重复相同的功能。

¿ 我该怎么做?

感谢您的回复。

【问题讨论】:

  • 你想让它每天随机切换一次吗?每个用户,每个站点?
  • @user3185638 您是否使用数据库来注册这些链接以及暴露的日期/时间?

标签: php random time hyperlink


【解决方案1】:

您可以使用当前的 unix 时间戳来计算要显示的链接的索引。

$item = $links[time()/86400 % 3];

86400 是一天中的秒数。

【讨论】:

  • 非常感谢代码,完美运行,可以随机设置时间吗?我想在 3 后 4 天后 2 天更换并重复此顺序。
【解决方案2】:

如果我理解正确,请获取一年中的日期并使用模数来决定应该显示哪个链接。这样,它将每 3 天轮换一次。见date function

$links = array(array('url' => 'http://google.com', 'name'=>'google'),
               array('url' => 'http://hotmail.com', 'name' => 'hotmail'),
               array('url' => 'http://hawkee.com', 'name' => 'Hawkee'));
//$num = array_rand($links);
$num = intval(date('z'))%3 // this will return 0,1,2 based on which day we are currently
$item = $links[$num];

printf('<a href="%s" title="%s">%s</a>', $item['url'], $item['name'], $item['name']);

【讨论】:

    【解决方案3】:

    使用 php cron 作业创建 php 时间事件查看示例 here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-28
      • 2019-04-26
      • 1970-01-01
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多