laravel+高德地址转为经纬度

https://console.amap.com/dev/key/app

//这个是高德开发者中心的网址

直接上干货:

//在控制台我的应用创建一个应用得到秘钥

//建表

composer require guzzlehttp/guzzle
//下载高德的脚本
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<form action="adds" method="post">
    @csrf
      <tr>
          <td>请输入城市</td>
          <td><input type="text" name="fang_addr"></td>
      </tr>
    <tr>
        <td><input type="submit"></td>
    </tr>
</form>
</body>
</html>

//表单

use GuzzleHttp\Client;
//在控制器中引入类
   $data = \request()->post();
        unset($data['_token']);
        $modder = modellers::create($data);
        $url =  "https://restapi.amap.com/v3/geocode/geo?key=03a4d7bdbd0e729398803d0fe2c1492d&address=%s&city=%s";
        $url = sprintf($url,$modder->fang_addr,$modder->fang_addr);
          //dd($url);
        $data = file_get_contents($url);
        //dd($data);
        //file_get_contents是拉进第三方数据的
         $data = json_decode($data,true);
        //dd($data);
        if(count($data['geocodes'])>0)
        {
           $locationArr = explode(',',$data['geocodes'][0]['location']);
           $modder ->update([
                  'longitude'=>$locationArr[0],
                   'latitude'=>$locationArr[1]
           ]);
        }
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class modellers extends Model
{
    use HasFactory;
    public $table ='bj';
    protected $guarded =[];
}
//模型层

//思路:先将数据添加入库之后,引入高德的脚本,获取经纬度,将经纬度修改入库(别忘了写路由哦)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值