0

我正在尝试使用 smarty 计算午夜过后的分钟数。我可以得到当前时间......但我如何得到与午夜的差异。如何创建代表午夜 12:00 的日期/时间对象?

4

2 回答 2

0

您可以使用时间戳构造午夜的 DateTime:

$midnight = strtotime("0:00"); $dt = new DateTime("@$midnight");

然后要查找时差,可以使用 date_diff 函数:

http://www.php.net/manual/en/datetime.diff.php

于 2013-03-06T19:25:10.933 回答
0

我同意 John C,这个逻辑不属于 smarty。所以我最终用 php 编写它,然后在 smarty 中调用该函数。为了得到午夜时间我做了以下

$midnightTime = new DateTime();        
$midnightTime -> setTime(0,0,0);   
midnightTime->getTimestamp()

然后使用 Greg 的建议使用 date_diff 计算差异。

于 2013-03-07T17:53:22.563 回答