0

我们一直在使用IPLEGENCE Database pro根据 IP 地址获取用户时区。在这里,我有一些不寻常的时区偏移。下面列出了哪些

  • 美国东部标准时间+1
  • PST-2
  • PST-1
  • 格林威治标准时间+12.75

我不确定上面列出的究竟是什么。

有人可以帮我将上述时区转换为UTC。

谢谢你的时间。

4

2 回答 2

0

这是表示时区的一种相当奇怪的方式。我的猜测是GMT+12:45查塔姆群岛。不确定其他人,他们可能在任何地方。

恕我直言,这种类型的数据存在一些问题:

  • 时区不是固定的偏移量。当数据库提到 EST 时,它们可能表示“美国东部时间”。但这可能指的是东部标准时间 (EST) 的 -5 小时偏移量,或东部夏令时间 (EDT) 的 -4 小时偏移量。通过在数据中将其称为“EST”,他们将其固定为 -5,而实际上它可能是 -4。请参阅时区标签 wiki中的“时区!= 偏移量” 。

  • 时区缩写可能不明确。例如,我怎么知道“EST”真的是指美国东部标准时间 (-5)?它可能指的是澳大利亚东部标准时间 (+10)。这里有一个列表,你可以看到有很多时区的缩写相同。

  • IP 地理位置是“最佳猜测”,不具备确定时区所需的那种准确性。这些数据库中的时区可能与列出的坐标相匹配,但您几乎无法保证用户实际上位于这些坐标处。它可能会为您提供代理服务器或网络路由器的位置。在公司网络上尤其如此,其中(在某些情况下)您在另一个城市的公司办公室中有一个 IP,并且所有 Internet 流量都通过该 IP 过滤。您将获得该公司办公室的时区 - 而不是用户的时区。您可以在此处此处阅读有关 IP 地理位置准确性的更多信息。

如果您通过其他方式(例如通过手机上的 GPS 数据)知道用户的坐标,那么您可以使用此处描述的几种不同技术之一。

于 2013-07-01T15:13:09.597 回答
0

这是时区列表。EST 几乎总是(除了那些 DST 重叠)GMT-5。格林威治标准时间是 UTC,或者是一个小时的休息时间(同样是 DST)。

EST+1 = GMT-4
PST-2 = GMT-10
PST-1 = GMT-9

如果要将其转换为 UTC,您可能做的最好的事情就是使用DateTime object

于 2013-07-01T13:25:35.120 回答