2010-11-11 47 views
1

如何计算PHP中的时差?获取时差

例如:2:00和3:30。

我想将时间转换为秒,然后减去它们,然后将其转换回小时和分钟以了解差异。有没有更容易的方法来获得差异?

回答

3

看看PHP DateTime object

$dateA = new DateTime('2:00'); 
$dateB = new DateTime('3:00'); 

$difference = $dateA->diff($dateB); 

(假设你有> = PHP 5.3)

你也可以做到这一点的程序的方式...

$dateA = strtotime('2:00'); 
$dateB = strtotime('3:00'); 

$difference = $dateB - $dateA; 

See it on CodePad.org

可以拿到小时的偏差是这样的...

$hours = $difference/3600; 

如果你正在处理落在24小时内(0:00 - 23:59)之间的时间,你也可以这样做。 ..

$hours = (int) date('g', $difference); 

虽然这可能太不灵活,值得实施。

0

检查此链接...

http://www.onlineconversion.com/days_between_advanced.htm

我用这个来计算服务器时间和用户本地时间之间的区别。抓住小时的差异,并在用户注册时将其放在表单中。然后,我使用它在用户在线做东西时更新网站上的时间。

一旦我得到它的工作,我打开这条线......

if (form.date1.value == "") 
    form.date1.value = s; 

到...

form.date1.value = "<?PHP echo date("m/d/Y H:i:s", time()) ?>"; 

现在我可以比较了用户的时间和服务器的时间!你也可以抓住秒和分钟。