【问题标题】:How to display localized time, based on a visitor's Ip address?如何根据访问者的 IP 地址显示本地化时间?
【发布时间】:2012-11-22 21:40:50
【问题描述】:

我通过函数获取用户的ip地址。

e.g

$ip_address = getIP();

现在我想使用 PHP 根据访问者的 IP 地址显示当前的本地化时间和日期。 如果可能的话,请指导我如何?

等待帮助并提前致谢。

【问题讨论】:

    标签: php datetime


    【解决方案1】:

    正如在 cmets 中指出的那样 - 这已经被问及回答了

    但不包括的一个答案是使用 Javascript 回调,或将 tiem 偏移量存储在来自 Javascript 的 cookie 中(或调整显示时间)。

    使用回调的示例:

    • 在 PHP 中使用会话(session_start,或创建您自己的会话处理程序)
    • 在第一页(您没有日期)或发送设置会话的空白保留页面并使用 Javascript 重定向到实际页面并附加时区差异

    代码:

    var d = new Date()
    window.location.href = PageYouWant + '?offset=' + d.getTimezoneOffset();
    

    (根据您的需要而变化)

    • 然后在收到回叫时,记住会话的偏移量。然后发送一个 303 重定向到该 URL,而不使用 URL 中的偏移量,您就有了您需要的数据。

    您可以对 cookie 做类似的事情(如果您没有 cookie,请发送一个创建 cookie 并给您回电的保留页面)。

    保持页面空白,没有人会注意到它 - 看起来页面正在加载。

    【讨论】:

      猜你喜欢
      • 2012-05-12
      • 2015-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多