我遇到了一些不尋常的事情。由於某些原因,添加日期間隔只需要幾分鐘就可以增加67年。PHP日期時間問題
$wTime = new DateTime("2011-05-17 01:54:56 +0000");
echo $wTime->format("d/m/Y H:i:s\n");
$wTime->add(new DateInterval("P810M"));
echo $wTime->format("d/m/Y H:i:s");
結果是:
17/05/2011 01:54:56
17/11/2078 01:54:56
我不能看到我在做什麼錯事。這是DateTime對象中的錯誤,還是因爲我的代碼有問題?過去我遇到了一些惱人的bug。我正在運行Mac OS X上的源代碼構建的PHP(5.3.6)的最新版本。10.6
謝謝,這固定它。我不敢相信我寫了一篇關於這樣一個愚蠢的錯誤的文章。多可恥。 – Yoshi 2011-05-18 02:55:45
不用擔心。我承認,PHP在月份和分鐘上都有'M'這個事實非常糟糕。看起來像'I'是分鐘格式的替代品。但是從文檔中,'T'是*記錄的*方式來指定'M'作爲分鐘。 – 2011-05-18 13:41:47