vovanmix/google-places-api

Google Places Api

v1.0.7 2016-04-04 00:00 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:20:44 UTC


README

这是对 https://github.com/SachinAgarwal1337/google-places-api 的一个分支。

我添加了结果模型类、获取照片的API和缓存。

Google Places APi。

这是一个针对 Google Places Api Web Service 的PHP包装器。并且对 Laravel 框架 友好。

关于包

只需2行代码,您就可以请求任何Google Places API功能。无需手动执行任何curl请求。

以下地点请求可用

  • 地点搜索 根据用户的位置或搜索字符串返回地点列表。
  • 地点详情 请求返回有关特定地点的更详细信息,包括用户评论。
  • 地点自动完成 可以在您输入时自动填写地点的名称和/或地址。
  • 查询自动完成 可以用于提供基于文本的地理搜索的查询预测服务,通过在您输入时返回建议的查询。

安装

使用composer安装

composer require vovanmix/google-places-api

用法

Laravel用户可以查看 Laravel用法 部分

步骤1 - 使用命名空间导入类

use Vovanmix\GoogleApi\PlacesApi;

步骤2 - 初始化对象

$googlePlaces = new PlacesApi('API KEY');

注意:您还可以在初始化类后使用 setKey('KEY') 方法设置 API密钥。您可以将此与任何其他方法链在一起。

步骤3 - 开始使用API。

示例

$response = $googlePlaces->placeAutocomplete('some Place');

如前所述,只需2行代码即可执行任何请求。

完整示例

use Vovanmix\GoogleApi\PlacesApi;


function () {
  $googlePlaces = new PlacesApi('API_KEY') # line 1
  $response = $googlePlaces->placeAutocomplete('some input'); # line 2
}

与Laravel一起使用

步骤1

config\app.php 中设置服务提供者和外观

'providers' => [
....
....
Vovanmix\GoogleApi\ServiceProvider::class,
];

'aliases' => [
....
....
'GooglePlaces' => Vovanmix\GoogleApi\Facade::class,
];

步骤2

使用以下artisan命令发布配置文件

php artisan vendor:publish --provider="Vovanmix\GoogleApi\ServiceProvider"

这将创建配置目录中的 google.php 文件。

在此配置文件中设置 API密钥

设置3

开始使用包,使用外观。

$response = GooglePlaces::placesAutocomplete('some city');

响应

返回的响应是 Laravel的集合,因此您可以在其上执行任何可用的集合方法。

如果您不熟悉 Laravel的集合,您可以参考此处 的文档,或者您可以使用 response 作为简单的数组。

可用方法

地点搜索

nearbySearch($location, $radius = null, $params = [])

  • location — 检索地点信息所在的纬度/经度。这必须指定为纬度,经度。
  • 'radius' — 定义返回地点结果的范围(以米为单位)。允许的最大半径为50,000米。注意,如果指定了 rankby=distance(在以下 可选参数 中描述),则不需要包括 radius
  • 如果指定了 rankby=distance(在以下 可选参数 中描述),则必须指定一个或多个 keywordnametypes
  • params - 可选参数 您可以参考Google的官方网站 上的所有可用的可选参数

textSearch($query, $params = [])

  • query — 要搜索的文本字符串,例如:“餐厅”。Google 地点服务将根据此字符串返回候选匹配项,并根据它们感知的相关性排序结果。
  • params - 可选参数 您可以参考Google的官方网站 上的所有可用的可选参数

radarSearch($location, $radius, array $params)

  • location — 检索地点信息所在的纬度/经度。这必须指定为纬度,经度。
  • radius — 定义返回地点结果的范围(以米为单位)。允许的最大半径是 50,000 米。
  • params - 可选参数 您可以参考Google的官方网站 上的所有可用的可选参数

注意:雷达搜索请求必须包含至少一个 keywordnametypes

地点详情

placeDetails($placeId, $params = [])

  • placeId — 一个文本标识符,唯一地标识一个地点,由地点搜索返回。
  • params - 可选参数 您可以在Google 官方网页上找到所有可用的可选参数。

地点自动补全

placeAutocomplete($input, $params = [])

  • input — 要搜索的文本字符串。地点自动补全服务将根据此字符串返回候选匹配项,并根据它们感知的相关性排序结果。
  • params - 可选参数 您可以在Google 官方网页上找到所有可用的可选参数。

查询自动补全

queryAutocomplete($input, $params = [])

  • input — 要搜索的文本字符串。地点服务将根据此字符串返回候选匹配项,并根据它们感知的相关性排序结果。
  • params - 可选参数 您可以在Google 官方网页上找到所有可用的可选参数。

其他方法

getStatus()

这将返回 Google API 发送响应的状态。在任何请求之后使用它。

getKey()

这将返回与请求一起使用的 API KEY

setKey($key)

这将设置 API KEY

贡献

请随意报告问题或发起拉取请求。如果您发现此文档可以在任何方面得到改进,请随意为此打开一个问题。

许可证

Google 地点 API 是开源软件,根据MIT 许可证授权。