計算兩個日期之間的總秒數的最佳方法是什麼?到目前爲止,我已經試過沿着線的東西:計算PHP中的總秒數DateInterval
$delta = $date->diff(new DateTime('now'));
$seconds = $delta->days * 60 * 60 * 24;
然而,DateInterval對象的days
財產似乎在目前的PHP5.3版本(至少在Windows上被打破,它總是返回相同的6015
值)。我也試圖做到這一點,其中將無法保存天數各月(發至30日)的方式,閏年等:
$seconds = ($delta->s)
+ ($delta->i * 60)
+ ($delta->h * 60 * 60)
+ ($delta->d * 60 * 60 * 24)
+ ($delta->m * 60 * 60 * 24 * 30)
+ ($delta->y * 60 * 60 * 24 * 365);
但我真的不開心使用這種半提供的解決方案。
什麼是結果'$Δ - >格式( 「%R%S」) '? – warrenm 2010-07-05 00:01:28
@warrenm format格式的問題是當秒數爲0而分鐘數爲1時,'$ delta->格式(「%r%s」)'結果爲0 :( – zapadlo 2012-08-15 14:34:25
更糟糕但是,現在有人正在修正從粘貼上述EXACT代碼的編碼人員那裏獲得的代碼審查中發現的缺陷 - 不是每個月都有30天,並且每年都有365天。:) [編輯:編碼器可能已經我自己!] – taiganaut 2012-11-02 21:42:52