0

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

我唯一的问题是它与 UTC 相呼应,但如果我的用户在世界其他地方怎么办?我将如何检测他们的时区并将其传递给date()函数?

这甚至可能吗?

谢谢!

4

1 回答 1

1

OK,如果你更喜欢 session 的方式,在用户登录表单中放置一个隐藏字段,并使用 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 文档

于 2012-08-22T03:30:38.973 回答