如何从ip检索区域和城市? 我找到了这项服务: http://api.hostip.info/?ip=xyz.qwe.rty
但它没有给我这样的准确信息: http://www.ipaddresslocation.org/
你知道一些免费服务吗? 我需要使用php脚本检索此信息,但我不会安装外部库。非常感谢
答案 0 :(得分:34)
http://ipinfo.io,我的服务,为您提供有关IP的城市,国家和其他相关信息:
$ curl ipinfo.io/8.8.8.8
{
"ip": "8.8.8.8",
"hostname": "google-public-dns-a.google.com",
"loc": "37.385999999999996,-122.0838",
"org": "AS15169 Google Inc.",
"city": "Mountain View",
"region": "CA",
"country": "US",
"phone": 650
}
这是一个PHP示例:
$ip = $_SERVER['REMOTE_ADDR'];
$details = json_decode(file_get_contents("http://ipinfo.io/{$ip}"));
echo $details->city; // -> "Mountain View"
答案 1 :(得分:20)
这是我的最爱:
答案 2 :(得分:19)
免费地理位置API http://ip-api.com/docs/
您可以获取有关您的IP地址,国家/地区,城市,isp,组织的信息。
响应格式和示例:XML,JSON,CSV,PHP。
使用限制: 我们的系统将自动禁止任何IP地址每分钟超过240个请求。
PHP示例
$ip = $_SERVER['REMOTE_ADDR'];
$query = @unserialize(file_get_contents('http://ip-api.com/php/'.$ip));
if($query && $query['status'] == 'success') {
echo 'My IP: '.$query['query'].', '.$query['isp'].', '.$query['org'].', '.$query ['country'].', '.$query['regionName'].', '.$query['city'].'!';
} else {
echo 'Unable to get location';
}
答案 3 :(得分:1)
你可以试试这个。
$ tags = get_meta_tags(' HTTP://www.geobytes.com/IpLocator.htm的getLocation&安培;模板= php3.txt&安培; Ip地址= 94.55.180.139&#39); print $ tags [' city']; //城市名称
答案 4 :(得分:1)
如果您想通过http://www.ipaddresslocation.org/检索IP城市,请按照本教程进行操作:https://www.facebook.com/Websitedevelopar/posts/468049883274297 但是你用这个字符串改变了RegEx:
/<i>([a-z\s]+)\:[<\/i>\s]+<b>(.*)<\/b>/im
BYE