我正在使用此代码获取 IP 地址的位置。
$location = file_get_contents('http://freegeoip.net/json/'.'117.253.168.187');
这是我的问题,当我提供 IP 地址时,117.253.168.187 国家被列为正确的 IN,但该地区返回空值。
{"ip":"117.253.168.187","country_code":"IN","country_name":"India","region_code":"","region_name":"","city":"","zipcode":"","latitude":20,"longitude":77,"metro_code":"","area_code":""}
如果我将 ip 更改为 122.166.65.125,它会返回带有国家/地区的正确区域。
{"ip":"122.166.65.125","country_code":"IN","country_name":"India","region_code":"19","region_name":"Karnataka","city":"Bangalore","zipcode":"","latitude":12.9833,"longitude":77.5833,"metro_code":"","area_code":""}
我不知道为什么这个 api 在某些 IP 地址中显示空白区域??
我的页面有重定向,具体取决于地区。那么我该如何解决区域问题呢??
我正在从互联网收集虚拟 IP 地址,例如:http://myip.ms/view/cities/67445/IP_Addresses_Cochin.html
任何人都可以帮助我找到解决方案。
最佳答案
这是因为我的 be freegeoip.net 没有 IP 117.253.168.187 的完整区域信息。 我也尝试了很多 ip 到位置,但只支付了一个就可以了。您可以使用 http://www.ip2location.com/demo
关于php - 从用户 ip 地址查找位置和区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25801659/