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