mickadoo / duolingo-events
杜兰戈事件API的PHP API包装器
0.5.0
2021-07-24 17:08 UTC
Requires
- php: ^7.4|^8.0
- ext-intl: *
- ext-json: *
- guzzlehttp/guzzle: ^7.2
- symfony/property-access: ^5.1
- symfony/serializer: ^5.1
Requires (Dev)
- phpunit/phpunit: ^9.4
README
此包允许调用杜兰戈事件API。
用法
首先在项目中运行 composer req mickadoo/duolingo-events
。
要获取API包装器的实例,使用
use Mickadoo\DuolingoEvents\ApiFactory; use Mickadoo\DuolingoEvents\Request\EventsRequest; $api = ApiFactory::getEventsApi(); // Defaults to any language, events up to 3 days in future $events = $api->getEvents(new EventsRequest());
通过指定语言或时间来过滤事件
use Mickadoo\DuolingoEvents\ApiFactory; use Mickadoo\DuolingoEvents\Request\EventsRequest; $api = ApiFactory::getEventsApi(); // Defaults to any language, events up to 3 days in future $request = new EventsRequest(); $request->setLanguageCodes(['fr']); $request->setEndRange(new DateTime('+2 weeks')); $events = $api->getEvents($request);
每次调用将返回一个包含 Event
实例的数组。
获取单个事件
use Mickadoo\DuolingoEvents\ApiFactory; $api = ApiFactory::getEventsApi();; $id = 'ac10a8c7-e6e8-4acc-ac0d-5fd0274ab3df'; $event = $api->getEvent($id);
注意: 事件的 hosts
属性不会从集合调用(例如 getEvents
)中填充,它只会在单个事件调用中设置,即 getEvent($id)
测试
要运行测试套件,请克隆此存储库,运行 composer install
,然后在项目目录中运行
vendor/bin/phpunit