如何在PHP中获取具有特定时间的下一个日期



我想在PHP中获得特定日期和时间的日期,就像我想要第二天的日期和时间是上午9:30,即"2011-06-02 09:30:00"。我使用的代码就是这样做的,

<?php
   $next_day_date = date("Y")."-".date("m")."-".(date("d")+1)."  09:30:00";
   $new_trig_time_stamp = strtotime($next_day_date);
   $trigger_date_time = date("Y-m-d H:i:s",$new_trig_time_stamp);
   echo $trigger_date_time;
?>

上面的代码运行良好,但在31天失败,在31日返回"1970-01-01 05:30:00"。还有其他方法吗?

当按固定数字移动日期时,最好使用mktime(),因为它能很好地处理无效日期(例如,它知道1月32日实际上是2月1日)

$trigger_date_time = date("Y-m-d H:i:s", mktime(9,30,0, date('n'), date('j')+1, date('Y'));

strtotime()在这里非常有用。

$trigger_date_time = date( "Y-m-d H:i:s", strtotime( "tomorrow 9:30" ) );

通过unix时间戳计算它-更少的麻烦

<?php
   $trigger_date_time = date("Y-m-d 09:30:00",time() + 60*60*24);
   echo $trigger_date_time;
?>
echo date('Y-m-d', strtotime('+1 day')) . ' 09:30:30';

看看date_add

更详细地说,类似于。。。

$myDate = new DateTime("Some time");
$myDate->add(new DateInterval("P1D"));

然后可以使用$myDate->format(…)提取格式化的表示。

相关内容

  • 没有找到相关文章

最新更新