您的位置:首页 > 其它

通过IP地址获取当前地理位置(省份)的接口

2017-09-22 10:10 671 查看

1.淘宝接口通过ip获取地址

[html]
view plain
copy

/**  
   *  通过淘宝IP地址库获取IP位置  
   *1. 请求接口(GET):http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]  
   *2. 响应信息:(json格式的)国家 、省(自治区或直辖市)、市(县)、运营商  
   *3. 返回数据格式Json:  
   *其中code的值的含义为,0:成功,1:失败。  
   */  
  function getTaobaoAddress(){  
      $ipContent   = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=");  
      $jsonData = explode("=",$ipContent);  
      $jsonAddress = substr($jsonData[1], 0, -1);  
      return $jsonAddress;  
  }  

返回值:

[html]
view plain
copy

{  
    "code": 0,  
    "data": {  
        "country": "中国",  
        "country_id": "CN",  
        "area": "华南",  
        "area_id": "800000",  
        "region": "广东省",  
        "region_id": "440000",  
        "city": "广州市",  
        "city_id": "440100",  
        "county": "",  
        "county_id": "-1",  
        "isp": "教育网",  
        "isp_id": "100027",  
        "ip": "218.192.3.42"  
    }  
}  

2.新浪接口通过ip获取地址

[html]
view plain
copy

/*     
  * 新浪通过IP地址获取当前地理位置(省份)的接口   
  * 新浪的接口是,返回json      
  * http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js   
  * http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=218.192.3.42   
  * 参数有两个:format和ip  
  * 1)IP:不传入ip值时默认为本机ip,也可以指定特定的ip地址;  
  * 2)format:返回给客户端的数据格式有js和json格式:  
  */     
 public function getSinaAddress(){  
     $ipContent   = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=");  
     $jsonData = explode("=",$ipContent);  
     $jsonAddress = substr($jsonData[1], 0, -1);  
     return $jsonAddress;  
 }  

返回值:

[html]
view plain
copy

{  
    "ret": 1,  
    "start": -1,  
    "end": -1,  
    "country": "中国",  
    "province": "广东",  
    "city": "广州",  
    "district": "",  
    "isp": "",  
    "type": "",  
    "desc": ""  
}  

觉得哪个合适,就选用哪个;
不过有一个问题要注意,这两个接口毕竟是免费的,

自己练习的时候可以用,但在正规项目中还是用企业提供的接口;

因为这些接口的参数,如果改变你的项目就会出现问题
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  地理位置