thevaliantway/yelp-php

Yelp Fusion API 的 PHP 客户端封装

1.0.1 2017-06-25 18:42 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:24:01 UTC


README

Yelp Fusion API 的 PHP 客户端封装

Build Status GitHub release Code Climate Packagist License: MIT The Valiant Way StyleCI Twitter Follow

Yelp 的 Fusion API 允许您获取 32 个国家超过百万家本地企业的最佳信息和用户评价。

此 Yelp Fusion API 的 PHP 客户端封装使查询变得非常简单。使用键值对查询 API 以传递搜索参数,并接收一个 stdClass 对象进行处理。

安装

使用以下命令通过 composer 需要此包:

composer require thevaliantway/yelp-api

身份验证

Yelp Fusion API 使用 OAuth2 进行身份验证。使用 bearerRequest() 方法检索访问令牌。

$id        = YELP_ID
$secret    = YELP_SECRET
$yelpCreds = TVW\Yelp::bearerRequest($id, $secret);

成功后,该方法将返回包含以下内容的对象:

访问令牌有效期为 180 天,因此建议实施令牌缓存策略。

一旦颁发有效的令牌,您就可以使用以下方法进行操作。

企业搜索

根据提供的搜索条件返回最多 1000 家企业。每个 API 调用最多返回 50 个结果,因此请使用 offset 参数访问超出最初 50 个返回结果的结果。

以下示例将查询 API,获取距离邮政编码 10001 500 米内的 5 家最近的餐厅,按距离排序。

// parameters for testing
$searchParams = [
    "location"      => "10001",
    "radius"        => "500",
    "sort_by"       => "distance",
    "categories"    => "restaurants",
    "limit"         => 5
];
$yelpFusion = new Yelp(API_TOKEN);
$results    = $yelpFusion->searchBusiness($testParams);

您可以使用 getBusiness() 方法使用返回的企业 ID 查询详细信息。

有关附加搜索参数和 API 的响应详情,请参阅 https://www.yelp.com/developers/documentation/v3/business_search

电话搜索

根据提供的电话号码返回企业列表。可能有多个企业具有相同的电话号码(例如,具有相同 +1 800 电话号码的连锁店)。

以下示例将查询 API,获取具有 "+12127527470" 列出电话号码的企业。

$yelpFusion = new Yelp(API_TOKEN);
$results    = $yelpFusion->searchPhone("+12127527470");

注意:用于搜索的电话号码必须以 "+" 开头并包含国家代码。

有关 API 的响应详情,请参阅 https://www.yelp.com/developers/documentation/v3/business_search_phone

交易搜索

返回支持某些交易的企业列表。

以下示例将查询 API,获取将货物送到指定坐标的企业。

$transactionParams = [
    "latitude"      => "40.730610",
    "longitude"     => "-73.935242"
];
$yelpFusion = new Yelp(API_TOKEN);
$result     = $yelpFusion->searchTransaction("delivery", $transactionParams);

有关 API 的响应详情,请参阅 https://www.yelp.com/developers/documentation/v3/transactions_search

自动完成

基于输入文本返回搜索关键字、企业和类别的自动完成建议。

以下示例使用 "atomic" 查询 API 的自动完成建议。

$autoCompleteParams = [
    "text"          => "atomic",
    "latitude"      => "40.730610",
    "longitude"     => "-73.935242"
];
$yelpFusion = new Yelp(API_TOKEN);
$results    = $yelpFusion->autoComplete($autoCompleteParams);

有关 API 的响应详情,请参阅 https://www.yelp.com/developers/documentation/v3/autocomplete

企业详情和评论

返回企业的详细信息或最多 3 条评论。需要有效的企业 ID,可以通过企业、电话、交易或自动完成搜索获得。

以下示例将查询 API,获取 Blue Hill 的详细信息。

$yelpFusion = new Yelp(API_TOKEN);
$result     = $yelpFusion->getDetails("details", blue-hill-new-york");

以下示例将查询 API,获取 Blue Hill 的评论。

$yelpFusion = new Yelp(API_TOKEN);
$result     = $yelpFusion->getDetails("reviews", blue-hill-new-york");

有关 API 的响应详情,请参阅

支持

打开一个问题 以获取支持。

贡献

请使用Github Flow进行贡献。创建分支,添加提交,并发起一个Pull Request

许可

这是在MIT许可条款下分发的免费软件。

关于Valiant Technology

Valiant Technology是一家专注于创意和酒店业的托管服务提供商。我们的客户包括广告代理机构、公关公司、应用程序和网页开发者、电视/电影制片人、时装设计师、餐厅和零售业。是的,我们也为非创意公司提供支持,前提是他们喜欢我们的文化和与我们的团队“合拍”。了解更多信息请访问http://thevaliantway.com