2013-12-18 155 views
0
date_default_timezone_set('America/New_York'); 

$search_date = '2012-12-19 13:22:00'; 
$right_now = date('Y-m-d H:i:s'); 
$search_date = new DateTime($search_date); 
$right_now = new DateTime($right_now); 
$interval = $search_date->diff($right_now); 
echo $interval->format('%R%s seconds'); 

這顯示搜索日期和現在不同的秒數。在幾秒鐘內發現差異

我期望它返回兩位數以上的值,因爲兩個日期之間有99秒以上的差異,所以我不確定我做錯了什麼。

+1

對於DateInteval的格式,'%s'不是總秒數,而只是日期差異 的一部分秒(所以它只會在0-59的範圍內)。我已經發布了這個答案的一部分,但塞爾吉奧已經發布了正確的方法來獲得總秒數。 – Powerlord

回答

1

另外,很少改變你原來的代碼: -

date_default_timezone_set('America/New_York'); 

$search_date = new DateTime('2012-12-19 13:22:00'); 
$right_now = new DateTime(); 
$seconds = $right_now->getTimestamp() - $search_date->getTimestamp();