我有两个约会
$date1="03/17/2012 9:00 PM";
$date2=03/17/2012 9:40 PM";
我必须找出这两个日期之间的小时差异。我知道手动计算是40分钟。但我如何在PHP中计算这个。 我读了很多文档并试图计算。但是我得到了错误的结果。看我的代码
$dateDiff=(strtotime($date2)-strtotime($date1))/3600
但我得到了答案0.7。错误的答案
再来一次我如何显示小时和分钟? 例如:
$date1="03/17/2012 9:00 PM";
$date2=04/17/2012 9:40 PM";
然后我要显示12小时40分钟?
我现在如何更改代码?
请帮帮我
答案 0 :(得分:2)
使用它
$date1="03/17/2012 9:00 PM";
$date2="03/17/2012 9:40 PM";
$diff_seconds = strtotime($date2) - strtotime($date1);
echo floor($diff_seconds/3600).' hours and '.floor($diff_seconds/60).' minutes';
?>
答案 1 :(得分:0)
代码中有两个错误:
- 您的$date2
错了,您忘记了"
- 您尝试使用strtotime($date2)
两次而不是$date1
?
关于结果,
如果您想在几分钟内得到结果,请执行/60
如果您想要数小时的结果,只需/3600
。
$result = strtotime($date2) - strtotime($date1);
echo floor($result/3600).' hours and '.floor(($result%3600)/60).' minutes';
这是最好的方法,你必须添加%3600,否则如果你有一个多小时就会出现问题(在没有%3600的情况下,这将导致1小时80分钟)。
您可以在此处找到您的结果:Result in CodePad
如果您想12 hour and 40 minutes
,则必须$date2="03/18/2012 9:40 AM";