2017-02-09 64 views
0

我使用的是默認時區-06:00(美國)的共享服務器,但網站中的所有用戶都在+03:00時區。 我可以通過僅使用php來更改顯示給用戶的時間,因爲無法修改服務器設置。 我搜索了很多,嘗試使用的.htaccess使用此代碼使用php更改時區

SetEnv TZ America/Indianapolis 

設置時區,也是我在PHP代碼

putenv("TZ=Asia/Baghdad"); 
date_default_timezone_set("Asia/Baghdad"); 

的開頭添加了這個代碼,但仍然沒有改變

這是我的顯示日期和時間:

echo date('Y-m-d/h:i a', strtotime($articles_info['date'])); 

這可能是一個簡單的解決方案,但我仍然在學習過程中。 非常感謝..

+1

爲什麼不通過時區,當你'strtotime()'日期? – Darren

+0

我在php手冊中沒有找到像這樣的方式,你可以幫助使用語法@Darren –

+0

可靠的事情,'$ articles_info ['date']'看起來像什麼?你可以嘗試如下:'strtotime($ articles_info ['date']。'+0300');' – Darren

回答

2

由於沒有時區作爲日期/時間的一部分$articles_info['date'],PHP知道如何將日期/時間更改爲默認值?據PHP知道,日期/時間已經在默認的時區。告訴它的提供的日期/時間的時區:

echo date('Y-m-d/h:i a', strtotime($articles_info['date'] . ' America/Chicago')); 

-6:00應該是中部時間,但由於我們不知道,如果它是標準的(CST)或日光(CDT),請嘗試America/Chicago

+0

Hrm,這是一個不同的做法,得到我的投票!尼斯。 – Darren

+0

這完全工作,非常感謝你 –