IP到位置+当地时间?

时间:2011-04-29 05:24:54

标签: php

目前我一直在使用http://www.geoiptool.com/,但我无法获得当地时间。我不知道该怎么办才能获得当地时间。

有人可以帮助我,显示位置+当地时间吗?我有一个邮件应用程序,我尝试在位置+当地时间显示IP。

2 个答案:

答案 0 :(得分:3)

Geobytes会给你补偿:

http://www.geobytes.com/IpLocator.htm?GetLocation&IpAddress=64.34.119.12

或者采用XML格式(您可能需要查看源代码才能看到它):

http://www.geobytes.com/IpLocator.htm?GetLocation&template=php3.txt&IpAddress=64.34.119.12

这将为您提供偏移量,只需将偏移量加/减为GMT / UTC。

答案 1 :(得分:3)

嗯,这不是您问题的真实答案,但可以帮助您正确理解这种方法的不准确程度。

请将此答案作为附注阅读。

是的,可以为您的用户提供或设置位置/时间。但是你也应该为它们提供国家/时间选择器。有些IP无法正确解析(匿名代理,来自其他国家的借用IP(我的情况),大陆IP(如“欧洲”,“亚洲”等组)等。

我的案例显示了这种方法可能是错误的。

当我从geobytes.com尝试ipLocator时,我得到了这个:

enter image description here

我的IP地址已解析为:

  • 地点:罗马尼亚
  • 时间偏移: +0200 (此时DST处于有效状态,因此它为+0300

真正的问题是我的位置不是 Romania,我的时间偏移是+0100/+0200

看这张照片:

enter image description here

红色箭头显示我的真实位置。黑框中的信息显示我的真实位置的正确值。那么,错误的位置对用户来说不是一个大问题,但错误的当地时间是非常讨厌的事情。

是的,我知道,那不是你想要的。但是你不应该修复用户位置和/或当地时间,因为这可能是错误的方法。 IPv4地址肯定不能准确获取有关用户的真实信息。

另外,我发现ipLocator不遵循DST规则,并且使用该时间偏移(图像#1)将在夏季显示错误的当地时间(对于考虑DST的国家/地区/省份)。