2017-02-09 66 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

这完全工作,非常感谢你 –