仅使用PHP将日期转换为小时

时间:2014-07-08 22:20:35

标签: php datetime time

我会使用PHP在日期时间添加一定的小时数。  我有兴趣只使用小时格式显示结果。

例如,我将日期时间增加8小时,如下所示:

$result= date("H:i", strtotime('18:00') + 8*3600);

但我得到的结果值 01:00 ,但结果会得到26 ..

请帮助我,我找不到解决办法:(

谢谢大家

2 个答案:

答案 0 :(得分:2)

使用DateTime

更容易
$date = new DateTime('18:00:00');
$date->modify('+8 hours');
echo $date->format('H:i');

编辑:也许我当时不明白这个问题。如果您想获得26,那么您可以使用以下内容:

$date = new DateTime('18:00:00');
echo $date->format('H') + 8;

答案 1 :(得分:0)

基本PHP日期数学。 strtotime()返回一个unix时间戳,这是自1970年1月1日午夜以来的秒数。

date()获取这些时间戳并将它们格式化为您想要的任何表示形式。但'H' “从零开始的小时数”。这是“一天中的小时”。如果您的时间戳代表2014年7月8日中午12点,那么H将是12,因为它是中午。自1970年1月1日以来,它不会达到50亿小时。

e.g。

Jul 8/2014 11pm  + 3 hours = Jul 9/2014 2am. 
date('H' of Jul 9/2014)  = 2, not "14"