在 php 中,可以使用 google maps geocoding api 或第三方库获取地理编码。google maps geocoding api:安装 api 库启用 api设置 api 密钥使用 geocode() 方法获取地理编码提取经纬度第三方库(例如 geocoder/geocoder):安装第三方库创建 geocoder使用 geocode() 方法获取地理编码提取经纬度
如何使用 PHP 获取地理编码
简介
地理编码是一种将地址或地名转换为其相应经纬度坐标的过程。在 PHP 中,可以使用 Google Maps Geocoding API 或其他第三方库获取地理编码。
Google Maps Geocoding API
1. 安装 API 库
composer require google/cloud-geocoder
登录后复制
2. 启用 API
在 Google Cloud Platform Console 中,启用 Geocoding API。
3. 设置 API 密钥
在 config/geocoder.php 文件中设置 API 密钥:
<?php use GoogleCloudGeocoderGeocoderClient; $apiKey = getenv('GOOGLE_MAPS_API_KEY'); $geocoder = new GeocoderClient([ 'key' => $apiKey ]);
登录后复制
4. 获取地理编码
使用 geocode() 方法获取地理编码:
$address = '1600 Amphitheatre Parkway, Mountain View, CA'; $result = $geocoder->geocode($address);
登录后复制登录后复制
5. 提取经纬度
经纬度坐标存储在 latitude 和 longitude 属性中:
$latitude = $result->getLatitude(); $longitude = $result->getLongitude();
登录后复制
第三方库
1. 安装第三方库
composer require geocoder/geocoder
登录后复制
2. 创建 Geocoder
use GeocoderProviderGoogleMaps; use GeocoderGeocoder; $apiKey = getenv('GOOGLE_MAPS_API_KEY'); $adapter = new GoogleMaps($apiKey); $geocoder = new Geocoder($adapter);
登录后复制
3. 获取地理编码
使用 geocode() 方法获取地理编码:
$address = '1600 Amphitheatre Parkway, Mountain View, CA'; $result = $geocoder->geocode($address);
登录后复制登录后复制
4. 提取经纬度
经纬度坐标存储在 latitude 和 longitude 数组键中:
$latitude = $result[0]->getCoordinates()->getLatitude(); $longitude = $result[0]->getCoordinates()->getLongitude();
登录后复制
以上就是php如何获取地理编码的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:木子,转转请注明出处:https://www.dingdanghao.com/article/684823.html