显示直到某个时间的天/小时

时间:2014-05-12 12:21:46

标签: php datetime

我需要计算直到特定日期/时间的剩余时间(天/小时)。

但是,我没有使用静态日期。

想象一下,我在每周日每周日17:00举办活动。我需要显示直到下一个事件的剩余时间,即即将到来的星期日17:00。

我在answer中找到了以下代码。它适用于静态日期/时间,但显然不是我想要的。

$now = new DateTime();
$future_date = new DateTime('2011-05-11 12:00:00');
$interval = $future_date->diff($now);
echo $interval->format("%d days, %h hours, %i minutes, %s seconds");

感谢您的时间。

1 个答案:

答案 0 :(得分:9)

您可以使用相对时间格式next Sunday 17:00。像这样:

$now = new DateTime();
$future_date = new DateTime('next Sunday 17:00');
$interval = $future_date->diff($now);
echo $interval->format("%d days, %h hours, %i minutes, %s seconds");

输出:

6 days, 2 hours, 33 minutes, 53 seconds

在此处详细了解相对时间格式:http://www.php.net/manual/en/datetime.formats.relative.php