繁体   English   中英

如何在PHP的特定时间获取第二天?

[英]How to get next day at a certain hour in PHP?

我需要检查PHP中的日期是否大于第二天的00:00小时。 乍一看,我试图用

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

但是实际上它是在添加time()(24 * 60 * 60)

有什么解决办法吗?

PS:我试图避免在+1天使用日期,并避免在没有小时信息的情况下退回UNIX

您可以使用:

if($date_variable<strtotime('midnight tomorrow')){
   return true;
}else{
   return false
}

您可以尝试使用mktime(),如下所示:

if($date_variable<mktime(0,0,0, date('m'), date('d')+1, date('Y')){
   return true;
}else{
   return false
}

好的,现在可以接受的答案已有三年多了,因为我们有了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()函数还接受的所有参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM