問題是日期('r')返回錯誤的時間爲我的時區。錯誤的PHP日期()輸出在wamp服務器
的php.ini區設置:
date.timezone =歐洲/基輔
date_default_timezone_set( '歐洲/基輔')在我的腳本解決了這個問題。
那麼WAMP有什麼問題?
問題是日期('r')返回錯誤的時間爲我的時區。錯誤的PHP日期()輸出在wamp服務器
的php.ini區設置:
date.timezone =歐洲/基輔
date_default_timezone_set( '歐洲/基輔')在我的腳本解決了這個問題。
那麼WAMP有什麼問題?
根據該documentation of date_default_timezone_get
,所述date.timezone
配置選項可以通過設置TZ
environement變量(其又可以通過調用date_default_timezone_set
覆蓋)覆蓋。從你的描述來看,我懷疑環境設置是否可行。
我建議您還是使用date_default_timezone_set()從腳本
例如
date_default_timezone_set('Europe/Kiev');
或
ini_set('date.timezone', 'Europe/Kiev');
...避免PHP猜測時區。
當您將代碼傳輸到不同的服務器時,例如在烏克蘭以外的地方,它非常方便。如果date.timezone
未在php.ini
中設置,或者其設置不正確,此行應幫助您避免意外(錯誤)結果。當您無法訪問和/或修改php.ini
(共享主機)時也很方便。
此外,請確保您沒有在php.ini
的行和行中使用;
。
更改後重新啓動服務器php.ini
。
編輯php.ini
並重新啓動Apache:
php.ini
(去PHP - > PHP。INI)date.timezone
值;date.timezone = UTC date.timezone = Europe/Kiev
phpinfo();
date.timezone
默認情況下,它顯示GMT時間,你可以改變你的祗園用下面的代碼
date_default_timezone_set("Asia/Bangkok");//set you countary name from below timezone list
echo $date = date("Y-m-d H:i:s", time());//now it will show "Asia/Bangkok" or your date time
...應該這樣做。 3.重新啓動服務器
我知道這是一個老問題。 如果您使用的是PHP框架,您可能需要檢查框架的配置文件。例如在Laravel中,打開config/app.php
,您會在那裏找到時區。將其設置爲您的時區。
你的'phpinfo()'裏有什麼? – zerkms 2011-04-22 08:36:36
php.ini中的設置在wampserver2.2之前實際不起作用,但現在已在wampserver2.4中修復 – xhlwill 2013-09-13 09:11:12
編輯'php.ini'文件中的配置後重啓wamp服務器 – Rafee 2017-11-24 10:02:45