2010-02-10 38 views
0

我知道這已被問過幾次,但我似乎無法找到正確的答案。我想計算兩個unix時間戳之間的差異,並以天顯示這種差異。我不關心這裏的幾分鐘或幾秒鐘。如何獲得計算兩個unix時間戳的正確結果

$time = 172800 - time() + 1265010604; 
echo floor($time/86400); 

其中1265010604是今天的時間戳,172800是3天的補償。由於

+1

將'86400'的魔法數字重寫爲'(24 * 60 * 60)'使它更清晰一點。 – 2010-02-10 17:36:27

回答

0
$now = time(); 
$then = time() - 172800; 
$difference = $now - $then; 
echo "It was ".floor($difference/86400)." days ago"; 
+0

我明白了,非常感謝Pekka。 – James 2010-02-10 17:19:29

0

我想計算的差異之間的兩個UNIX時間戳 ,並顯示在天

這句話抓住你的要求,並提出了一種簡單的方法,這區別:

$difference = abs($t0 - $t1); 
$days = floor($difference/86400); 
+0

感謝您的回答Pilcrow。 – James 2010-02-10 17:27:12

0
/* First second of the day */ 
function dayStart ($date) { 
    return mktime(0, 0, 0, date('n', $date), date('j', $date), date('Y', $date)); 
} 

/* Get count of days between dates */ 
function daysBetween ($dateStart, $dateEnd) { 
    return round((dayStart($dateEnd) - dayStart($dateStart))/(24 * 60 * 60)); 
} 
+0

謝謝你的答案桑尼。酷功能! – James 2010-02-10 17:27:29

+0

我爲自己做了一個具有靜態函數的類,用於做這樣的各種日期計算。 – Sonny 2010-02-10 18:34:48

相關問題