rapidwebltd / simple-google-maps-api
谷歌地图服务的简单API
v2.0.2
2018-01-29 22:10 UTC
Requires
- guzzlehttp/guzzle: ^6.2
- rapidwebltd/rw-file-cache: ^1.0
README
此库允许用户轻松与谷歌地图API通信并从地址中检索一组坐标。
安装
要安装,只需运行以下Composer命令。
composer require rapidwebltd/simple-google-maps-api
请记住,如果您的框架不这样做,请包括 vendor/autoload.php
文件。
用法
创建 SimpleGoogleMaps 对象可以有两种方式。
第一种方式是传递您在注册谷歌地图API时提供的API密钥。
use RapidWeb\SimpleGoogleMaps\Factories\SimpleGoogleMapsFactory; $simpleGoogleMaps = SimpleGoogleMapsFactory::getByKey("[APIKEY]");
第二种方式是提供您的客户端名称和创建谷歌企业账户时提供的加密密钥。
use RapidWeb\SimpleGoogleMaps\Factories\SimpleGoogleMapsFactory; $simpleGoogleMaps = SimpleGoogleMapsFactory::getByClientNameAndCryptKey("[CLIENTNAME]","[CRYPTKEY]");
一旦创建对象,您就可以通过 getByAddress
方法从地址获取坐标。
$addressline = "10 Downing St, Westminster, London SW1A UK"; $homeCoords = $simpleGoogleMaps->getByAddress($addressline);
可选地,如果您的输入地址不够精确,您可以让部分匹配返回。您可以通过 allowPartialMatches
方法实现,如下所示。
$simpleGoogleMaps->allowPartialMatches(); $homeCoords = $simpleGoogleMaps->getByAddress('test address');
上述方法将返回一个 LatLong 类型的对象,这允许您像这样访问坐标。
$latitude = $homeCoords->lat; $longitude = $homeCoords->long;
您还可以通过在 LatLong 对象上使用 distanceTo
方法计算两个 LatLong 对象之间的距离。
$milesBetween = $homeCoords->distanceTo($toCoords);
默认情况下,这将返回英里,您也可以通过在方法调用中添加来请求公里。
$milesBetween = $homeCoords->distanceTo($toCoords,"kilometres");