【问题标题】:Local time zone not correct当地时区不正确
【发布时间】:2016-04-21 17:29:31
【问题描述】:

我在使用 PHP 为用户获取本地时区时遇到了一些问题。 该网站必须覆盖多个时区,因此设置静态时区不起作用。

所以如果我这样做 date_default_timezone_get(); 在我的时区(哥本哈根)将关闭两个小时。

我在 Stackoverflow 和 Google 上看过这里,有很多线程可以解决这个问题,但没有一个能以简单方便的方式解决这个问题,我的猜测是一定有某种以方便的方式解决这个问题。

由于这与注册时间使用有关,因此它的工作原理至关重要。到目前为止,我只是将时区硬编码为哥本哈根,但由于这即将发布,因此必须获取用户的确切时间。

【问题讨论】:

  • 这可能是因为您的服务器位于哥本哈根以外。
  • 不太清楚你在问什么。正如您所说,关于检测用户的时区还有很多其他 Stack Overflow 问题,因此您应该使用其中一个答案。基本上它需要 Javascript,因为它是相关的 client 时区。我看不出“没有一个答案是简单的,因此必须有一个简单的方法”的逻辑。

标签: php timezone


【解决方案1】:

PHP 无法访问用户的时区。您可以通过 JavaScript 获取它,或者尝试通过 geoIP 对其 IP 地址进行获取,但这可能很笨重并且容易出错。

您最好的选择,也是谷歌、Facebook、Twitter 等主要参与者普遍采用的选择,就是询问用户他们的时区是否必须在其中显示日期。一些网站还采用将日期显示为“5 小时前”而不是日期/时间的方法。

【讨论】:

    猜你喜欢
    • 2019-03-19
    • 2018-06-07
    • 2018-10-21
    • 2014-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    相关资源
    最近更新 更多