paladinsdev / php-api
此包已被废弃,不再维护。未建议替换包。
这是Paladins的PHP API适配器,用于轻松与Hi-Rez/Evil Mojo开发者API进行通信。
v1.1.4
2019-02-11 19:32 UTC
Requires
- php: >=7.1
- guzzlehttp/guzzle: ^6.3
- nesbot/carbon: ~1
- onoi/cache: ^1.2
Requires (Dev)
- phpunit/phpunit: ^7
README
关于
这个PHP包源于对拥有一个良好文档和功能的包的需求,以帮助与Paladins开发者API进行通信。此包使用Laravel 5组件构建,且未在该环境之外进行测试。
安装
$ composer require paladinsdev/php-api
使用
使用该类有两种方式,但只有一种推荐。单例方法在Paladins Ninja中使用,每天处理数十万场比赛。
推荐(单例)
<?php use PaladinsDev\PHP\PaladinsAPI; class YourClass { public function getSomePlayer() { $playerDetails = PaladinsAPI::getInstance('YourDevId', 'YourDevAuthKey', $cacheDriver)->getPlayer('SomePlayer'); } }
使用此方法(Laravel)
Laravel使用resolve()
辅助函数非常容易使用单例。打开项目目录根目录下bootstrap
文件夹中的app.php
文件,并添加以下代码。
$app->singleton('PaladinsAPI', function($app) { return PaladinsDev\PHP\PaladinsAPI::getInstance(env('PALADINS_DEVID'), env('PALADINS_AUTHKEY'), $cacheDriver); });
这假设您有两个环境变量PALADINS_DEVID
和PALADINS_AUTHKEY
。您可以按需编辑此内容。您可以通过调用resolve('PaladinsAPI')
来使用它,然后就像使用类的正常实例一样使用它。
不推荐
这不是推荐的做法,因为Hi-Rez / Evil Mojo每天只允许如此多的会话,并且创建的会话越多,就越快达到限制。应该能够通过缓存来处理此方法...但仍然不推荐。
<?php use PaladinsDev\PHP\PaladinsAPI; class YourClass { private $api; public function __construct() { $this->api = new PaladinsAPI('YourDevId', 'YourDevAuthKey', $cacheDriver); } public function getSomePlayer() { $playerDetails = $this->api->getPlayer('SomePlayer'); } }
缓存驱动器
为了将Laravel/Iluminate框架与包解耦,我们从TeamReflex那里学到了一课,并集成了Onoi Cache。
您可以将驱动程序作为构造函数或getInstance
方法的第三个参数传递。
Illuminate驱动器
安装
composer require halfpetal/illuminate-onoi-cache
使用
use Halfpetal\Onoi\Illuminate\Cache; use lluminate\Cache\Repository; $cacheDriver = new Cache(app(Repository::class));