Инструмент или код PHP для преобразования IP-адреса в координаты lat / lng

У меня есть тысячи IP-адресов посетителей моего сайта, какие инструменты я могу использовать для их преобразования в координаты lat / lng? Затем я смогу визуализировать данные на карте с фильтрами для последующей демографии.

На одном из моих сайтов я использовал бесплатную базу данных geolite страны maxmind, которую можно скачать здесь: http://www.maxmind.com/app/geolitecountry

Они также предоставляют версию на уровне города, которая включает в себя long / lat: http://www.maxmind.com/app/geolitecity

но обратите внимание, что точность бесплатной версии намного ниже, чем у платной версии.

Я предлагаю использовать 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.

http://www.telize.com и http://www.iptolatlng.com обе предоставляют решения в JSON