xivapi / xivapi-php
为 xivapi.com 提供的 PHP SDK
1.6.12
2019-05-18 17:19 UTC
Requires
- php: ^7.2
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- phpunit/phpunit: ~6.0
This package is auto-updated.
Last update: 2024-09-19 23:30:36 UTC
README
此提供与 XIVAPI 交互的非常简单的客户端,以获取动态对象作为回报。
入门
此库需要 PHP 7.4+
使用 composer 安装:https://packagist.org.cn/packages/xivapi/xivapi-php
composer require xivapi/xivapi-php
使用
xivapi-php 库是围绕 Guzzle 的一个非常简单的包装。
初始化
$api = new \XIVAPI\XIVAPI();
设置您的密钥(如果有的话)
您可以通过设置环境变量 XIVAPI_KEY 或通过以下方式
$api->environment->key('my_api_key');
使用查询(不包括搜索)
API 提供了一组查询,允许您自定义响应,这些查询在您请求数据之前都会传递给 API。搜索有一些额外的查询,这些查询是硬编码的,因为这些与 Elastic Search 交互。
limit=250- https://xivapi.com/docs/Content#limitids=1,4,8,20- https://xivapi.com/docs/Content#idsminify=1- https://xivapi.com/docs/Content#minifylanguage=en- https://xivapi.com/docs/Welcome#languagesnake_case- https://xivapi.com/docs/Welcome#snake_casecolumns- https://xivapi.com/docs/Welcome#columnstags- https://xivapi.com/docs/Welcome#tags
内容
内容根据游戏文件中可用的内容动态驱动,使用魔法方法调用不同类型,例如
item()instanceContent()tripleTriadCard()
$api->content->[contentName]()->list(); $api->content->[contentName]()->one($id); // examples $item = $api->content->item()->one(1675); $action = $api->content->action()->one(127); $instances = $api->content->instanceContent()->list(); // non dynamic methods: $api->content->list(); $api->content->servers(); $api->content->serversByDataCenter();
搜索
$api->search->find($string)->results();
搜索修改方法包括
// The column to search on $api->search->findColumn($column); // the algorithm to use $api->search->findAlgorithm($searchStringAlgorithm); // the page to start on $api->search->page($number); // sorting order $api->search->sort($field, $order); // limit results $api->search->limit($limit); // columns in the results $api->search->columns($columns); // change elastics filter bool condition (eg: should, must, must_not) $api->search->bool($bool);
过滤器是可累积的,可以添加多个,例如
$api->search ->filter('LevelItem', 30, SearchFilters::GREATER_THAN) ->filter('ItemSearchCategory', 10, SearchFilters::GREATER_THAN_OR_EQUAL_TO);
角色
$api->character->search($name, $server, $page); $api->character->get($id, $data = [], $extended = false); $api->character->verify($id); $api->character->update($id); $api->character->delete($id);
自由公司
$api->freecompany->search($name, $server, $page); $api->freecompany->get($id, $data = []); $api->freecompany->update($id); $api->freecompany->delete($id);
链接船
$api->linkshell->search($name, $server, $page); $api->linkshell->get($id, $data = []); $api->linkshell->update($id); $api->linkshell->delete($id);
战场团队
$api->pvpteam->search($name, $server, $page); $api->pvpteam->get($id, $data = []); $api->pvpteam->update($id); $api->pvpteam->delete($id);
注意:_private API 是 XIVAPI 和 MogBoard 内部使用的。它不能公开使用,并且被访问密钥锁定。