當我們在運用
今天用echo date("Y-m-d H:i:s")獲取系統時間時,發現獲取的時間與系統的時間不符。
PHP是外國人開發的,所以經常有很多東西不太好用。研究了一番發現,PHP默認設置的時間是以格林威治時區為標准的,表現是和北京時間差8個小時,因此我們需要將其+8個小時,原理是我們正好位於時區的東8區,所以我們必須把PHP的時區設定改為北京時間。
PHP獲取時間錯誤的解決方法:
打開PHP.ini文件,一般在PHP的安裝根目錄下,找到其中的;date.timezone,刪掉date.timezone前面的分號,並改成date.timezone = PRC。存盤,並重新啟動Apahce服務(有時用Apache的restart功能會有問題,建議先stop然後再start)
重新檢驗一下echo date("Y-m-d H:i:s")。 是不是時間恢復正常了。
如果無法改動PHP.ini文件,也可以在輸出時間之前使用date_default_timezone_set()設置時區
date_default_timezone_set('Asia/Shanghai');
函數
date_default_timezone_set(timezone)與date_default_timezone_get()
PHP獲取時間錯誤的問題看似簡單,但是卻不容忽視。希望大家能在以後的編程中注意這些小缺憾。