2012-11-13 49 views

回答

1
<?php 
$time1 = time(); 
$time2 = mktime(0,0,0,11,13,2012); // earlier today 
echo ($time1 - $time2)/3600; // 3600 seconds in hour 
?> 
4

嘗試:

$date1 = "2012-11-05 12:35:00"; 
$date2 = "2012-11-07 14:35:00"; 
$diff = strtotime($date2) - strtotime($date1); 
$diff_in_hrs = $diff/3600; 
print_r($diff_in_hrs); 

Manual

Demo

2

如果你有一個上最新的PHP

$dateOne = new DateTime('2012-01-20 00:00:00'); 
$dateTwo = new DateTime('2012-01-21 02:00:00'); 

//從程序 $ interval = date_diff($ dateOne,$ dateTwo);

// Alternatively OOP style if supported 
$interval = $dateOne->diff($dateTwo); 

參見:http://www.php.net/manual/en/class.dateinterval.php

+1

你會得到'未定義功能date_diff'或'未知的方法diff'如果它不是最新的。或者只是檢查'php -v' /'phpinfo()' –

+0

如果你沒有設置默認時區('date_default_timezone_set()'),你會收到致命錯誤 –

+0

你在php.ini中設置'date.timezone = 'Europe/London';'或使用'date_default_timezone_set()'函數http://php.net/manual/en/function.date-default-timezone-set.php –