正確解讀PHP獲取時間錯誤原因
當(dāng)我們在運(yùn)用PHP語言進(jìn)行實(shí)際編程時通常都會遇到一些小麻煩而苦苦的去尋找解決的辦法。我們在這里就為大家分享PHP獲取時間錯誤的解決方法。#t#
今天用echo date("Y-m-d H:i:s")獲取系統(tǒng)時間時,發(fā)現(xiàn)獲取的時間與系統(tǒng)的時間不符。
PHP是外國人開發(fā)的,所以經(jīng)常有很多東西不太好用。研究了一番發(fā)現(xiàn),PHP默認(rèn)設(shè)置的時間是以格林威治時區(qū)為標(biāo)準(zhǔn)的,表現(xiàn)是和北京時間差8個小時,因此我們需要將其+8個小時,原理是我們正好位于時區(qū)的東8區(qū),所以我們必須把PHP的時區(qū)設(shè)定改為北京時間。
PHP獲取時間錯誤的解決方法:
打開PHP.ini文件,一般在PHP的安裝根目錄下,找到其中的;date.timezone,刪掉date.timezone前面的分號,并改成date.timezone = PRC。存盤,并重新啟動Apahce服務(wù)(有時用Apache的restart功能會有問題,建議先stop然后再start)
重新檢驗(yàn)一下echo date("Y-m-d H:i:s")。 是不是時間恢復(fù)正常了。
如果無法改動PHP.ini文件,也可以在輸出時間之前使用date_default_timezone_set()設(shè)置時區(qū)
date_default_timezone_set('Asia/Shanghai');
函數(shù)
date_default_timezone_set(timezone)與date_default_timezone_get()
PHP獲取時間錯誤的問題看似簡單,但是卻不容忽視。希望大家能在以后的編程中注意這些小缺憾。