用于将IP地址转换为lat / lng坐标的工具或PHP代码

时间:2009-07-03 01:30:51

标签: php ip-address latitude-longitude

我的网站有数千个访问者的IP地址,我可以使用哪些工具将这些地址转换为lat / lng坐标?然后,我将能够在地图上显示数据,并使用过滤器收集进一步的人口统计数据。

4 个答案:

答案 0 :(得分:6)

我建议您使用Google Analytics(分析)来解决您的问题,但如果您想尝试自己,请从这里开始:

查看此链接http://www.geoplugin.net/php.gp,您会获得有关该IP地址位置的完整详细列表,包括纬度和经度。

它不是那么精确但它有效,我使用它。这是一个实际使用的PHP脚本:

<?php
$ip_addr = $_SERVER['REMOTE_ADDR'];
$geoplugin = unserialize( file_get_contents('http://www.geoplugin.net/php.gp?ip='.$ip_addr) );

if ( is_numeric($geoplugin['geoplugin_latitude']) && is_numeric($geoplugin['geoplugin_longitude']) ) {

$lat = $geoplugin['geoplugin_latitude'];
$long = $geoplugin['geoplugin_longitude'];
}
echo $ip_addr.';'.$lat.';'.$long;
?>

您可以在http://whateverhappens.org/ip-addr/

看到它正常工作

看看Geoplugin网站的例子。

答案 1 :(得分:5)

对于我的一个网站,我使用了maxmind的免费geolite国家数据库,可在此处下载:http://www.maxmind.com/app/geolitecountry

他们还提供城市级版本,其中包括long / lat:http://www.maxmind.com/app/geolitecity

但请注意,免费版本的准确性远低于付费版本。

答案 2 :(得分:0)

答案 3 :(得分:0)

http://www.telize.comhttp://www.iptolatlng.com都提供了JSON的解决方案