我想计算今天和明年4月4日之间的差异(现在是2013年4月4日),但我不知道如何使用实际年份+ 1创建DateTime对象。这就是我所拥有的:
$now = new DateTime();
$ref = mktime(0, 0, 0, 4, 3, date("Y")+1);
echo $diff = $ref->diff($now)->days;
我认为问题是mktime没有返回DateTime对象?这是最好的方法吗? 感谢
答案 0 :(得分:1)
$today = date("Y-m-d");
$destination = date("Y-m-d" , mktime(0, 0, 0, 4, 3, date("Y")+1));
$todayObj = new DateTime($today);
$destObj = new DateTime($destination);
echo $diff = $todayObj->diff($destObj)->days;
尚未测试。
答案 1 :(得分:1)
使用strtotime,如下所示
$nextyear = date('Y')+1;
$time1=$nextyear.'-'.date('m').'-'.date('d');
$time2=date('Y-m-d');
echo $hourdiff = round((strtotime($time1) - strtotime($time2))/3600, 1);
答案 2 :(得分:0)
试试这个:
print_r(date_diff(date_create(), date_create('2013-04-03 00:00:00')));
输出:
DateInterval Object
(
[y] => 0
[m] => 5
[d] => 22
[h] => 9
[i] => 8
[s] => 25
[invert] => 0
[days] => 173
)