一段时间以来,我一直在用这个来敲打我的头。有人知道我如何检查是否$theDate
在从现在开始的 24 小时范围内。
这是我想出的代码,但它似乎不起作用:(
if (time() <= ($theDate + 86400)) {
// current time is 86400 (seconds in 24 hours) or less than stored time
}
注意:$theDate
是unix时间戳。
任何帮助,将不胜感激。
谢谢 :)
你有它倒退:
if ($theDate <= (time() + 86400)) {
// current time is 86400 (seconds in 24 hours) or less than stored time
}
您是否总是希望范围为 24 小时?请记住,有时一天中有 23 或 25 小时从/到 DST。
考虑到这一点的方法是:-
$tomorrow = (new \DateTime())->add(new \DateInterval('P1D'));
if((new \DateTime())->setTimestamp($theDate) < $tomorrow){
//Do something
}
有关这些非常有用的类的更多信息,请参阅DateTime 手册。