PHP 偏移日期() 结果基于用户的时区?



我使用time()函数将我的站点上发生的事件存储在数据库中,并使用date()函数回显它们。

我唯一的问题是,它将其作为UTC进行响应,但如果我的用户在世界其他地方呢?我如何检测他们的时区并将其传递给date()函数?

这可能吗?

谢谢!

好的,如果您喜欢会话方式,请在用户登录表单中放置一个隐藏字段,并使用JS为其赋值。简单说明:

<form>
<input type="text" name="username">
<input type="password" name="password">
<input type="hidden" name="offset" id="offset">
</form>
<script language="JavaScript">
document.getElementById("offset").value=(new Date).getTimezoneOffset();
</script>

在PHP方面,像这样操作date的结果:

$_SESSION["offset"]=intval($_GET["offset"]);
/*works here...*/
$date=date("Y-m-d",time()-($_SESSION["offset"]*60));

如果您想以所有客户端的方式进行操作,也可以使用Date().getTimezoneOffset()来处理结果。

MDN文档

相关内容

  • 没有找到相关文章

最新更新