hotelbook / sdk
酒店预订连接器
Requires
- guzzlehttp/guzzle: ^6.3
- moneyphp/money: ^3.0
- monolog/monolog: ^1.18
- nesbot/carbon: ^1.22
- psr/log: ^1.0
- symfony/options-resolver: ^4.0
- tmconsulting/support: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.8
- mockery/mockery: ^0.9.5
- phpunit/phpunit: ^6.4
- phpunit/phpunit-mock-objects: ^4.0
This package is not auto-updated.
Last update: 2024-09-15 04:15:49 UTC
README
此SDK用于连接到hotelbook并使用其方法来调用第三方API。
安装
composer require tmconsulting/hotelbook-php-sdk
开始使用
首先,您需要获得hotelbook的凭证。
带有凭证的配置如下。
$config = [ 'url' => 'https://hotelbook.pro/xml', 'login' => 'YOUR LOGIN', 'password' => 'YOUR PASSSWORD' ];
(如果传入无效的任何内容,则在创建主实例时抛出异常)
之后,包含库并创建其基本实例。
//Require vendor require __DIR__ . "/../vendor/autoload.php"; //Use main hotelbook class use App\Hotelbook\Main; //Create an instance of main class $hotelbook = new Main($config);
现在您可以使用hotelbook sdk的所有方法。例如
例如,搜索酒店
use Carbon\Carbon; $from = Carbon::parse('08-07-2018'); $till = Carbon::parse('09-07-2018'); $result = $hotelbook->search(1, $from, $till, [new SearchPassenger(1, [2])]);
现在结果将是一个包含所有结果的ResultProceeder实例
错误处理和结果处理。
如果方法有错误,则抛出一个异常,您可以处理它然后运行getErrors获取结果。
try { $result = $main->book(...someArguments); } catch (Exception $e) { //Do something with the exception }
每个方法都返回一个对象(如果不抛出异常),该对象有两个方法
- getItems()
- getErrors()
getItems
方法返回方法返回的所有项。getErrors
方法返回hotelbook返回的所有错误。
因此您可以执行如下操作
//$result is a result of search request if (!empty($result->getErrors()) { //Handle error } $items = $result->getItems(); //Do something with items.
API参考
元解释
所有静态数据API $methods都通过$main->{$YOUR_METHOD_NAME}
可用。
它返回一个包含结果(项、错误)的对象。(如上所述。)
可用方法
要使用任何方法,您必须创建HotelBook SDK的实例。请参阅此处
目前可用的方法
- 搜索(搜索酒店)
- 异步搜索(异步模式下搜索酒店)
- 详情(酒店详情)
- 预订订单(预订酒店)
- 取消订单(取消预订)
- 确认订单(确认预订)
- 撤销订单(确认后取消预订)
以及获取字典的方法。
- 国家 -(获取所有可用的国家)
- 城市 -(获取所有可用的城市)
- 位置 -(获取所有可用的位置)
- 度假村 -(获取所有可用的度假村)
- 酒店类型 -(获取所有可用的酒店类型)
- 酒店类别 -(获取所有可用的酒店类别)
- 酒店设施 -(获取所有可用的酒店设施)
- 酒店列表-(获取所有可用的酒店列表)
- 餐饮 -(获取所有可用的餐饮类型)
- 早餐餐饮 -(获取所有可用的早餐餐饮类型)
- 房间大小 -(获取所有可用的房间大小)
- 房间类型 -(获取所有可用的房间类型)
- 房间设施 -(获取所有可用的房间设施)
- 房间视角 -(获取所有可用的房间视角)
- 货币汇率 -(获取货币汇率)
获取国家
元解释
获取国家方法用于获取hotelbook数据库中存在的所有国家。因此,您可以使用它作为搜索参数等...
基本示例
//You already have an instance of SDK, and it's stored in $main $countries = $main->country(); //Now, in countries, you have a simple result. $countiesArray = $countries->getItems(); //Now in $countiesArray you have an array of Countries.
获取城市
元解释
获取城市用于使搜索更深入,因此您可以使用它作为搜索参数。此外,您还可以通过国家搜索城市(因此您可以获取一个国家的所有城市。)
基本示例
获取数据库中存在的所有城市。
$cities = $main->city(); $citiesArray = $cities->getItems();
按国家获取所有城市。
//Get first country item from the DB. $country = current($main->country()->getItems()); //Find all cities there. $cities = $main->city($country); //Get all available items. $citiesArray = $cities->getItems();
联系我们。
如果您对API或SDK本身有任何问题或疑问,欢迎您创建问题,或者您可以发送电子邮件至 shatilo.reymond@gmail.com
或 roquie0@gmail.com