0

所以 30 分钟后结果页面不再可见,我使用了 strtotime。我的代码会说清楚,我需要在 { ???? }

<?php
    $when = strtotime('2012-10-23 13:39:00');
    if ($when < time()){
        ?> <a href="result.php?">Bekijk de resultaten!</a>
        <?php echo "update every 2 min";
       }
     elseif ( ???? )
     { echo "overtime";}
     else
    {echo "De wedstrijd begint om 13:39 vandaag!";}

?>

谢谢 :)

4

3 回答 3

1

你有问号的地方:

elseif (($when + 1800) > time())

1800 是 30 乘以 60 秒(以秒为单位的 30 分钟)

于 2012-10-23T11:56:03.360 回答
0

我假设链接的主要部分应该在 13:39 到 + 30 分钟可见,所以我也更正了该if部分。+ 30 分钟strtotime非常甜蜜。您只需在时间字符串之后键入+30 minutes

<?php
  $time = '2012-10-23 13:39:00';
  $startTime = strtotime($time);
  $stopTime = strtotime($time + ' +30 minutes'); 
  if ($startTime > time() && $stopTime < time()) {
    echo "<a href=\"result.php?\">Bekijk de resultaten!</a>";
    echo "update every 2 min";
  }
  elseif ( $stopTime > time() ) {
    echo "overtime";
  } else {
    echo "De wedstrijd begint om 13:39 vandaag!";
  }
?> 
于 2012-10-23T12:01:54.887 回答
0

如果您有日期的各个组成部分,您也可以使用 mktime 并将 30 添加到分钟值,php 会按照您想要的方式完全解析它。以下两行将返回完全相同的值:

echo date("n/j/Y H:i:s", mktime(13, 69, 00, 10, 23, 2012));
echo date("n/j/Y H:i:s", mktime(14, 9, 00, 10, 23, 2012));

如果您只有字符串值,那么前面提到的方法会很好用。

于 2012-10-23T12:10:00.053 回答