如何用php和mysl确定日期之间的时间?

时间:2016-06-11 16:30:10

标签: php mysql angularjs

我想确定日期之间的时间间隔,我有不同的表格,我有初始时间,例如[2016-05-28]和[13:36:42],另一次[2016-05-31]和[09:05:18]

我想知道,我如何确定已经过去的时间,在这种情况下,我将有"两天20小时"

我使用的语言是PHP,mysql,任何框架和angularjs,也是最值得推荐的一面

3 个答案:

答案 0 :(得分:2)

在mylsq中您可以使用TIMEDIFF并加入关系

SELECT TIMEDIFF(table1.datetime1,table2.datetime2) 
from table1 
inner join table2 on table1.id= table2.id

结果是秒,所以你可以连续60分钟.60小时和24小时

答案 1 :(得分:2)

MySQL的:

SELECT 
CONCAT(
  FLOOR((UNIX_TIMESTAMP('2016-06-20 12:00:00') - UNIX_TIMESTAMP('2013-12-05 12:03:30'))/86400) , ' days ' ,
  FLOOR(((UNIX_TIMESTAMP('2016-06-20 12:00:00') - UNIX_TIMESTAMP('2013-12-05 12:03:30')) % 86400) /3600) , ' hours ' ,
  'etc...');

打印: 927天22小时等...

答案 2 :(得分:1)

简单的PHP代码:

<?php
$dates = ['2016-05-12 05:33:02','2016-07-17 05:00:12'];
$time_diff = strtotime($dates[0]) - strtotime($dates[1]);
$time_diff<0?$time_diff*=-1:null;

print floor($time_diff/86400) . ' days ' . floor(($time_diff % 86400) / 3600) . ' hours '  . floor(($time_diff % 3600) / 60) . ' minutes';
?>

打印:65天23小时27分钟