我有一个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))));
答案 0 :(得分:0)
如果要在页面加载时设置正确的时区,则需要将用户时区存储为应用程序中的首选项。不幸的是,PHP(或任何后端语言)无法访问此类浏览器信息(除非您另外将其传递给服务器端脚本)。
另一种选择是传递UTC日期或服务器时区日期,获取用户的时区并使用Javascript将日期转换为当地时间。
您可以使用
获取UTC时区偏移量var d = new Date()
d.getTimezoneOffset();