幾天前我剛開始使用php。我正在嘗試獲取特定日期的星期幾。php:使用「日期」函數從給定日期開始的一週中的某一天:提前一天獲得預期答案
$firstmonthdate = strtotime("7/1/2015");
//print what my timezone is, for clarity's sake for this question
$myTimezone = date_default_timezone_get();
echo $myTimezone."\n"."first day = ".date("r",$firstmonthdate);
我獲得以下這段代碼的輸出:
Asia/Singapore
first day = Wed, 01 Jul 2015 00:00:00 +0800
到目前爲止好。我的問題是在代碼的下一行:
echo "first day = ". strtolower(date("D",$firstmonthdate))."\n";
此行的代碼的輸出是:
first day = thu
從上面可以看出,正確的答案是wed
但我正在逐漸thu
和我完全困惑。這可能是由於新加坡和格林威治標準時區不同,但我不知道爲什麼以及如何解決它。如上所示,我已經正確設置了本地時區,並且正通過本地筆記本電腦上的CLI界面運行。本地網絡服務器也提取相同的php.ini文件。
有什麼建議在這裏出了什麼問題?
非常感謝。
嘗試你的代碼之前添加此使用:'date_default_timezone_set('亞洲/新加坡);',看看有沒有什麼幫助? – MikeK
嘗試了此建議,但輸出保持不變。感謝您查找問題。 –