时间:2010-11-11 02:47:45

标签: php time

如何计算PHP中的时差?

示例:2:00和3:30。

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

2 个答案:

答案 0 :(得分: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);

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

答案 1 :(得分: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()) ?>";

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