虚拟主机域名注册-常见问题网络编程问题 → PHP


通过ip地址获取位置 调用百度和淘宝接口
作者:

第一种,百度接口

$url="http://api.map.baidu.com/location/ip?ak=请输入您的AK&ip=$onlineip&coor=bd09ll";
$ip=json_decode(file_get_contents($url)); 
$province= iconv("UTF-8", "GB2312",$ip->{'content'}->{'address_detail'}->{'province'});//获取到的UTF-8格式转换成GB2312,如果网站编码就是utf-8就不要转换
$city= iconv("UTF-8", "GB2312",$ip->{'content'}->{'address_detail'}->{'city'});
$province = str_replace('省', '',$province);//过滤省,因为用在特殊地方,如无特殊要求,不用过滤。
$province = str_replace('市', '',$province);
$city = str_replace('市', ' ', $city);
$city = str_replace('区', ' ', $city);


返回值:

{  
    address: "CN|吉林|长春|None|CERNET|1|None",  
    content: 
    {  
        address: "吉林省长春市",  
        address_detail: 
        {  
            city: "长春市",  
            city_code: 53,  
            district: "",  
            province: "吉林省",  
            street: "",  
            street_number: "" 
        },  
        point: 
        {       
            x: "125.31364243",      
            y: "43.89833761" 
        }  
    },  
    status: 0  
}

相关的链接:

百度LBS API开发指南:http://developer.baidu.com/map/wiki/index.php?title=webapi/ip-api

百度AK申请地址:http://lbsyun.baidu.com/apiconsole/key?application=key 


第二种:淘宝ip接口

function getipCity($ip)
{
$url="http://ip.taobao.com/service/getIpInfo.php?ip=".$ip;
$ip=json_decode(file_get_contents($url)); 
if((string)$ip->code=='1'){
  return false;
  }
  $data = (array)$ip->data;
return $data; 
}
$b=getipCity("106.111.75.24");
print_r($b);
echo $b[city] ;




来源:
阅读:1740
日期:2016-09-27

推荐朋友 】 【 评论 】  【 字体: 】 
上一篇:非常简洁的滑动门效果 一个页面可放多个滑动门
下一篇:如何提升网站内页权重 提升网站收录
  >> 相关文章
  没有相关文章。
发表评论


点  评: 字数0
用户名:  密码:

  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款