elogank / lol-php-api-client
League of Legends PHP API Client
Installs: 125
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 1
Forks: 1
pkg:composer/elogank/lol-php-api-client
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2025-10-11 20:16:03 UTC
README
League of Legends PHP API Client
This client use the API server provided by : https://github.com/EloGank/lol-php-api
Installation
From Composer
In the require key :
{
"require": {
"elogank/lol-php-api-client": "1.0.*@dev"
}
}
Then, in a CLI window :
php composer.phar update "elogank/php-lol-api"
Composer what ?
Ok, here a fast lesson about Composer.
Composer is a PHP CLI dependency manager. Download Composer in your project root directory, here : https://getcomposer.org/download/
Then, you'll have a new file : composer.phar.
Now create a composer.json, and read this brief documentation : https://getcomposer.org/doc/00-intro.md
Finally, install this repository !
How to use
The Client object need three parameters, and two as optionals :
$hostthe server host IP address$portthe server port$formatthe default output format$throwException(optional, default: true) if true, anApiExceptionwill be throw on error and the response won't contain the first array level which contain "success" & "result"/"error" keys.$timeout(optional, default: your php.ini "default_socket_timeout" configuration) the connection timeout, in second.
In short :
// Declare your client and the configuration $client = new \EloGank\ApiClient\Client('127.0.0.1', 8080, 'json'); // Do your API request try { $response = $client->send('EUW', 'summoner.summoner_existence', ['Foobar']); } catch (\EloGank\ApiClient\Exception\ApiException $e) { // error var_dump($e->getCause(), $e->getMessage()); }
The send() method have three parameters and one optional :
regionit's the client region short name (EUW, NA, ...). Make sure there is a registered client for the selected region in your API !routethe API route, in short it's the "controller_name.method_name"parametersit's the route parameters, it's an arrayformat(optional) if you need a specific format for a specific route (see the API configuration documentation for available formats)
Example
This example is available in the file examples/index.php.
Note 1: use 192.168.100.10 instead of 127.0.0.1 if you using Virtual Machine for the API server.
Note 2: a ConnectionException can be thrown if there is a problem with the server (timeout or connection refused, for example). Be sure to handle this case by surrounding with a try/catch and set the timeout in the Client::__construct() when an API client timeout.
// examples/index.php <?php require __DIR__ . '/../vendor/autoload.php'; // Good response, no error, with exception $client = new \EloGank\ApiClient\Client('127.0.0.1', 8080, 'json'); $response = $client->send('EUW', 'summoner.summoner_existence', ['Foobar']); var_dump($response); // Error response, with exception $client = null; $client = new \EloGank\ApiClient\Client('127.0.0.1', 8080, 'json'); try { $response = $client->send('EUW', 'summoner.summoner_existence', ['Not_found_summoner']); } catch (\EloGank\ApiClient\Exception\ApiException $e) { var_dump($e->getCause(), $e->getMessage()); } // Good response, without exception $client = null; $client = new \EloGank\ApiClient\Client('127.0.0.1', 8080, 'json', false); $response = $client->send('EUW', 'summoner.summoner_existence', ['Foobar']); if ($response['success']) { var_dump($response['result']); } else { // catch error } // Error response, without exception // Good response, without exception $client = null; $client = new \EloGank\ApiClient\Client('127.0.0.1', 8080, 'json', false); $response = $client->send('EUW', 'summoner.summoner_existence', ['Not_found_summoner']); if ($response['success']) { // do some process } else { var_dump($response['error']); } // Request with timeout $client = null; $client = new \EloGank\ApiClient\Client('128.0.0.1', 8080, 'json', false, 1); $response = $client->send('EUW', 'summoner.summoner_existence', ['Not_found_summoner']); if ($response['success']) { // do some process } else { var_dump($response['error']); }