0
我希望以min:sec格式计算2次差值b/w。所以我接近正确计算时间差的方法有什么缺陷
date("i:s",(strtotime($User['end_time']) - strtotime($User['start_time'])));
我希望以min:sec格式计算2次差值b/w。所以我接近正确计算时间差的方法有什么缺陷
date("i:s",(strtotime($User['end_time']) - strtotime($User['start_time'])));
您可能会在某些服务器上遇到时区问题。
一个bettter方式将使用UTC时区进行计算:
$date = new DateTime('', new DateTimeZone('UTC'));
$date->setTimestamp(strtotime($User['end_time']) - strtotime($User['start_time']));
echo $date->format('i:s');
另一件事,如果他们恰好1小时不同,其结果将是00:00
strtotime($User['end_time']) - strtotime($User['start_time'])
给你几秒钟的差异。然后你将它传递给date
,这样你就可以得到unix时间戳的日期和时间。
如果你让你的渴望输出比它是正确的:) – Rikesh 2012-01-27 05:47:56
是的,我得到它,但有没有任何陷阱 – aWebDeveloper 2012-01-27 06:00:58
不,我不这么认为,你的方式是正确的! – Rikesh 2012-01-27 06:02:35