0

我有一个包含日期和时间字段的 HTML 表单。我假设当用户输入日期/时间时,他们是在本地时间这样做的,但是当我将它存储在数据库中时,我需要它在 UTC 中,然后在显示它时我需要将其调整为观众时间.
我可以从服务器知道客户端时区吗(我正在使用 PHP 和 Apache,但将来可能会使用 IIS,所以如果可能的话,我宁愿不依赖 Apache 的行为)?或者我可以用 Javascript 在客户端上进行 UTC <-> 本地转换吗?

示例:UTC+1 时区的用户提交2012-10-18 01:30. 这应该存储为2012-10-18 00:30:00(无论是什么)的时间戳。然后,如果使用本地 DST 的 UTC-5 客户端查看记录,他们应该会看到2012-10-17 20:30.

4

1 回答 1

1
<html>
<head>
<script>
function test()
{
    var d = new Date(2012, 6, 13, 12, 0, 0, 0);
    console.log(d);
    var hours = d.getUTCHours();
    console.log(hours);
}
</script>
</head>
<body>
<input type="button" onclick="test()" value="test"/>
</body>
</html>

您输入 d 作为本地时间,并使用 getUTCHours()、getUTCDates() 等获取 UTC 时间......然后将 UTC 时间发送回服务器。

于 2012-10-18T07:47:52.750 回答