700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > laravel8 使用高德地图查询经纬度(输入地名获取经纬度)

laravel8 使用高德地图查询经纬度(输入地名获取经纬度)

时间:2021-10-22 16:24:45

相关推荐

laravel8 使用高德地图查询经纬度(输入地名获取经纬度)

高德地图开放平台:/

注:需要注册成为开发者,注册成功后就可以使用此开放平台

注册成功后,登录开发放平台,进入后台

需要创建一个新的应用

创建应用成功后,需要添加一个key

添加key:

得到请求的key:

注:此key是日后请求api所用的key一定要保存好

api地址:/api/webservice/guide/api/georegeo/

由此api把地址转为经纬度

实现地址转换

Guzzle-http: https://guzzle-cn.readthedocs.io/

安装一下此插件

composer require guzzlehttp/guzzle

使用guzzle来发起GET请求

引入类

注:如果出现报错,请参考这篇文档:/houss/p/10992813.html

主要代码:

<?phpnamespace App\Http\Controllers;use GuzzleHttp\Client;use Illuminate\Http\Request;class job13Controller extends Controller{public function dataAdd(Request $request){$data=$request->all();$place=$data['place'];//高德地图网址 /dev/index 应用管理>我的应用申请的key$key="***";//将高德地图地图的api从config配置中读取出来//config('gode.gaodeapi');//请求的地址$api="/v3/geocode/geo?address=$place&output=json&key=$key";//申请一个请求类并设置过期时间$client=new Client(['timeout'=>5]);//发起请求$response=$client->get($api);$body=(string)$response->getBody();//转换成数组$arr=json_decode($body,true);$location=explode(',',$arr['geocodes'][0]['location']);$res=[//经度'longitude'=>$location[0],//纬度'latitude'=>$location[1]];//输出经纬度print_r($res);}}

效果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。