企业官网建站 小程序开发 云逸学习园地
技术文章 许愿墙
技术文章 PHP学习 Javascript学习 DIV+CSS学习 uniapp学习 HTML学习 微信小程序、公众号知识点 VUE知识学习
您所在的位置>云逸小栈>PHP学习>正文

PHP通过经纬度获取所在的城市,(省市区)

2024-04-07 09:31:32 浏览 2494

以腾讯地图为例,首先要封装一个调取api接口的函数

/**
* $location     要获取地址的经纬度     格式‘39.071510,117.190091’即纬度与经度用逗号隔开
* $key          腾讯地图开发者秘钥
* get_poi       是否返回周边地址列表   1是 0否
*/
public function getCitys($lat,$keys) {
   $url = 'https://apis.map.qq.com/ws/geocoder/v1/?location='.$lat.'&key='.$keys.'&get_poi=0';
   $info = file_get_contents($url);      //请求API接口,请求方式为GET
   $info = json_decode($info, true);     //返回数据转码为JSON
   return $info;
}

通过这个函数可以取得接口返回的城市信息,再对返回信息进行解析

//根据坐标获取省市区
$s=$this->getCitys($send['lat'].','.$send['lon'],Config::get('app.mapqq.keys'));
$send['province'] = $s['result']['ad_info']['province']?$s['result']['ad_info']['province']:'';
$send['city'] = $s['result']['ad_info']['city']?$s['result']['ad_info']['city']:'';
$send['district'] = $s['result']['ad_info']['district']?$s['result']['ad_info']['district']:'';

这样城市信息即可获得

网站开发者电话

18066742510

个人微信号
个人公众号
个人小程序
个人抖音