如何在(“Y-m-d H:i:s”)格式中获得两个日期之间的时差?

时间:2014-01-13 10:16:40

标签: php date

我正在尝试获取两个日期时间之间的差异并将其作为一分钟返回。日期&时间以日期(“Y-m-d H:i:s”)格式表示。但似乎我无法做到对。我做到了

$time=date("Y-m-d H:i:s");
$time=date("2014-01-13 08:18:25");

$interval = $time->diff($login_time);
$elapsed = $interval->format(%i minutes);
echo $elapsed;

这是按摩  “在非对象”

上调用成员函数diff()

因为我对日期格式不够好。所以请帮帮我。

这是怎么回事?

3 个答案:

答案 0 :(得分:0)

试试这个:

$date1 = new DateTime('2013-01-13 04:10:58');
$datediff = $date1->diff(new DateTime('2013-09-11 10:25:00'));
echo $datediff->i;

有关详细信息,请参阅此链接:http://www.php.net/manual/en/book.datetime.php

答案 1 :(得分:0)

在两个日期之间获得差异

$now     = new DateTime;
$before  = new DateTime('2014-01-10 08:18:25');
$diff    = $now->diff($before);
$elapsed = $diff->days * 24 * 60 + $diff->h * 60 + $diff->i;

demo

答案 2 :(得分:-1)

使用以下代码获取所有预期参数的时间。

  

$ time1 = date(“Y-m-d H:i:s”);      
$ time2 = date(“2014-01-13 08:18:25”);

     <$> $ $ = strtotime($ time1) - strtotime($ start);

     


$ year = floor(($ seconds)/(60 * 60 * 24 * 365));
$ month = floor($ seconds /   86400/30);
$周=楼($ seconds / 604800);
$天=   楼层($ seconds / 86400);
$ hours = floor(($ seconds - ($ days * 86400))   / 3600);
$分钟=楼层(($秒 - ($天* 86400) - ($小时*   3600))/ 60);
$秒=楼(($秒 - ($天* 86400) - ($小时*   3600) - ($ minutes * 60)));