php 获取IP地址 并获取坐标lat lng 并获取到所在地区

函数方法:ps:只能放在服务器上起效果,放在本地是无法起效果的

复制代码
/*
**根据ip获取坐标
***/
function get_zuobiao(){
    $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];//获取IP
    $user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];//获取IP
    $re = os_get("http://api.map.baidu.com/location/ip?ip=".$user_IP."&ak=878f0d7785ccb5c9f46215af5faf0ebf&coor=bd09ll");//获取lat lng
    $val = json_decode($re,true); 
    $point = $val['content']['point'];
    print_r($point);//拆分的lat lnt
    $re = getcity($point['y'],$point['x']);//根据lat lng 再获取所在省市区详
    print_r($re);exit();
}



/*根据坐标获取地区*/
function getcity($lat,$lng){
    $re = file_get_contents("http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location=".$lat.",".$lng."&output=xml&pois=1&ak=878f0d7785ccb5c9f46215af5faf0ebf");
    $xmlstring = simplexml_load_string($re, 'SimpleXMLElement', LIBXML_NOCDATA); 
    $val = json_decode(json_encode($xmlstring),true); 
    $city['qu'] = $val['result']['addressComponent']['district'];
    $city['city'] = $val['result']['addressComponent']['city'];
    $city['province'] = $val['result']['addressComponent']['province'];
    return $city;
}
复制代码

 

posted @   遇事稳坐钓鱼台  阅读(964)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示