0

如果它大于第二天的 00:00 小时,我需要检查 PHP 中的日期。乍一看,我尝试使用

if($date_variable<strtotime('+1day')){
   return true;
}else{
   return false
}

但实际上它所做的是添加到 time() (24*60*60)

有什么解决办法吗?

PS:我试图避免在 +1day 上使用日期并在没有时间信息的情况下回溯到 UNIX

4

3 回答 3

2

您可以使用:

if($date_variable<strtotime('midnight tomorrow')){
   return true;
}else{
   return false
}
于 2013-09-03T11:53:20.077 回答
1

您可以尝试像这样使用 mktime() :

if($date_variable<mktime(0,0,0, date('m'), date('d')+1, date('Y')){
   return true;
}else{
   return false
}
于 2013-09-03T11:50:34.143 回答
1

好的,接受的答案现在已经超过三年了,因为我们得到了 PHP5,甚至现在是 PHP7,我们可以在DateTime课堂上更容易地做到这一点。该类DateTime是原生 PHP 类。不需要更多的图书馆。

$oDateNow = new DateTime(); // Date now
$oDateTomorrow = new DateTime('tomorrow midnight'); // Date tomorrow midnight

$bResult = $oDateNow < $oDateTomorrow ? true : false;

该类接受该函数也接受DateTime的所有参数。strtotime()

于 2017-05-09T14:24:14.550 回答