我想在日期中添加持续时间,我设置了这段代码:
$date = new DateTime(Date('r'));
$date = $date->format("d-m-Y H:i:s");
$interval = new DateInterval('PT1H2M3S');
$date = $date->add($interval);
echo $date;
我收到此错误:Class' DateInterval'找不到
为什么这样,如何在没有DateInterval的情况下修改日期?
答案 0 :(得分:12)
DateInterval
,如手册页中所述:
DateInterval类
(PHP 5> = 5.3.0)
通过运行phpversion()
:
echo 'Current PHP version: ' . phpversion();
如果您的版本低于5.3,则需要将其升级为使用DateInterval
。
正如@Gordon所提到的,你可以使用DateTime::modify()
,例如:
<?php
$date = new DateTime('2006-12-12');
$date->modify('+1 day');
echo $date->format('Y-m-d');
?>
将一天添加到日期对象中。
答案 1 :(得分:7)
我使用strtotime
。也许不是最好的,但肯定是最简单的方法:
echo date("d-m-Y H:i:s",strtotime("2012-02-15 1 hour 2 min 3 sec"));
或者如果您需要从现在开始使用间隔:
echo date("d-m-Y H:i:s",strtotime("1 hour 2 min 3 sec"));