我有一個PHP日期函數bizzare問題。date()返回錯誤的日子,雖然時間戳是正確的!
代碼:我的服務器(本地主機,Windows)在
$numDays = 8;
$date = strtotime('2010-11-06');
for ($i=1; $i<=$numDays; $i++)
{
$thisDay = date("D, d M Y", $date);
print ($thisDay.'<br>');
$date+=86400; // add one day to timestamp
}
結果:
星期六,2010 06 11
孫,07十一月2010
週一,11月08 2010
2010年11月9日星期二
週三11月10日2010
週四11月11日2010
星期五,2010 11月12日
星期六,2010
我的Web服務器(Linux版)
的結果11月13日星期六,06 Nov 2010
* Sun,07 Nov 2010
太陽,07 2010年11月*
週一,2010年11月08
星期二,2010 11月09日
星期三,2010 11月10日
星期四,2010 11月11日
週五, 2010年11月12日
請注意2010年11月7日,Sun在遠程服務器上出現兩次?這是爲什麼發生?任何人都可以解釋此行爲?
86400秒= 1天。不幸的是,每個邊緣情況都需要一遍又一遍地學習:夏令時,閏年,閏秒,時區穿越,在光速附近行駛... – Boldewyn 2010-04-10 12:45:54
+1爲旅行光速,讓我想起愛因斯坦的相對性原理! – 2010-04-10 12:56:48
從字面上看,86400 secods = 24小時=一天:)與時區有關的問題是另一回事!問候我的第二個母親的國家:) – mspir 2010-04-10 12:57:04