如何将日期转换为小时

时间:2015-11-26 05:05:10

标签: php datetime

我有:

hours1 : 403440

date2 as : 2016/01/10

我需要以小时为单位转换date2,并找出两者之间的差异,这应该是几个小时。

2 个答案:

答案 0 :(得分:1)

date的第二个参数是一个unix时间戳,以秒为单位,因此将您的小时数乘以3600(每小时3600秒)。

$hours1 = 403440 * 3600;
$date1 = date("d-m-Y H:i:s", $hours1);
echo $date1;

输出:

09-01-2016 19:00:00

根据您的更新,您的代码应为:

$date2 = strtotime('2016/01/10');//get date to seconds from 1970
$hours1 = 403440 * 3600; // convert from hours to seconds
echo ($date2 - $hours1)/3600;//subtract seconds then divide by 3600 to get how many hours difference is

输出:

5

答案 1 :(得分:0)

date()的第二个参数是unix timestamp,它是自1970年1月1日00:00:00 UTC以来的秒数。 因此,如果$ hours1是自1970年1月1日00:00:00 UTC以来的小时数,那么它应该是     date("d-m-Y H:i:s",$hours1*3600); 产生正确的日期字符串。

另一方面,$hours2=(strtotime($date2)/3600);为您提供自1970年1月1日00:00:00 UTC以来的正确小时数。