根据经纬度获取城市信息,可以使用百度地图的api,具体代码如下:
public function getCityByLongLat($lon, $lat) {
if ($lon == '' || $lat == '') return '';
$url = "http://api.map.baidu.com/geocoder?location={$lon},{$lat}";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
【PHP根据经纬度获取城市信息】调用该方法:getCityByLongLat(114.03445502387153, 22.664319932725693); 返回结果是一个xml的字符串,如下是var_dump()打印结果:
文章图片
把结果转化为数组输出:
public function getCityByLongLat($lon, $lat) {
if ($lon == '' || $lat == '') return '';
$url = "http://api.map.baidu.com/geocoder?location={$lon},{$lat}";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
$data = https://www.it610.com/article/json_decode(json_encode(simplexml_load_string($output,'SimpleXMLElement', LIBXML_NOCDATA)), true);
return $data;
}
输出结果如下:
var_dump()数组
文章图片
数组转json
文章图片
推荐阅读
- 笔记|如何在Windows11安装安卓子系统()
- 笔记|C语言数据结构——二叉树的顺序存储和二叉树的遍历
- 2021年下半年《信息系统项目管理师》真题
- 个人理解|【C语言基础之类型转换】
- 学习分享|【C语言函数基础】
- 个人理解|【C语言实现井字棋及电脑落子优化】
- Python|蓝桥杯 平面切割 Python
- Python|Python 每日一练 二分查找 搜索旋转排序数组 详解
- 笔记|这是一个关于face_recognition和dlib库的安装(亲测有用,毕竟我代码都写出来了)
- 信令模式与非信令模式