根据用户IP TimeZone报告日期/时间值

时间:2015-05-07 16:54:26

标签: php mysql datetime

我有一个MySQL数据库,记录给定事件发生的时间。当您加载页面时,有一个Web应用程序显示这些时间但是它位于+0 TimeZone中。我希望这能显示用户所在的时区。

echo(date('l F jS Y h:i:s A', ($row["date"]/1000)- 3600*6));

上面的代码显示,如果我想要时区是中心,我必须* 6。但这只是新的时区,并且根据用户的位置不会改变。

另外一个额外的好处是能够在页面顶部显示用户的IP地址,城市和州。

编辑: 试图将UTC时区#变为$变量。 示例为中央时间将= -6。

echo(date('l F jS Y h:i:s A', ($row["date"]/1000)-(3600*(-1*$variable))));

1 个答案:

答案 0 :(得分:0)

如果要在页面加载时设置正确的时区,则需要将用户时区存储为应用程序中的首选项。不幸的是,PHP(或任何后端语言)无法访问此类浏览器信息(除非您另外将其传递给服务器端脚本)。

另一种选择是传递UTC日期或服务器时区日期,获取用户的时区并使用Javascript将日期转换为当地时间。

您可以使用

获取UTC时区偏移量
var d = new Date()
d.getTimezoneOffset();