【发布时间】:2014-02-10 02:32:32
【问题描述】:
我住在英国,当前时间是 2014 年 2 月 10 日星期一凌晨 02:30,但是,我的网站显示 2014 年 2 月 9 日星期日凌晨 02:30 - 午夜之前的日期和日期相同,所以我假设时区差异。我可以将其设置为我自己的时区吗?
编辑:我可以将其设置为用户的时区吗?
【问题讨论】:
-
不应该是时区问题。看看你的日期解释是否有偏差。
我住在英国,当前时间是 2014 年 2 月 10 日星期一凌晨 02:30,但是,我的网站显示 2014 年 2 月 9 日星期日凌晨 02:30 - 午夜之前的日期和日期相同,所以我假设时区差异。我可以将其设置为我自己的时区吗?
编辑:我可以将其设置为用户的时区吗?
【问题讨论】:
如果整整 24 小时后,这看起来不像是时区问题。但是以防万一,它是在您的 php.ini 中设置的,并且没有设置,它默认为服务器时区。
您可以通过将date.timezone 设置为您选择的时区,在您的php.ini 文件中进行设置。
date.timezone = Europe/London;
如果您无权访问 php.ini,您可以使用 date_default_timezone_set 在脚本中设置时区。
date_default_timezone_set('Europe/London');
【讨论】:
$_SERVER['REMOTE_ADDR'] 检测用户的IP,使用IP 地理定位服务获取国家/地区,然后为该国家/地区提供适当的时区。
你有两种方法来定义你想要的时区:
date_default_timezone_setdate_default_timezone_set('Asia/Manila');
修改您的 php.ini:date.timezone = Asia/Manila
【讨论】:
在代码中,您可以通过调用date_default_timezone_get() 查看默认时区。您可以使用date_default_timezone_set() 以编程方式设置它。最好的方法是使用 php.ini 设置。
【讨论】:
我认为你必须在初始化 PHP 环境的 php.ini 文件中设置时区首选项或如果你无权访问类似的东西,你可以查看http://www.php.net/manual/en/function.date-default-timezone-set.php
【讨论】: