kobermeit / github-api
GitHub API v3 client
Requires
- php: ^5.5 || ^7.0
- php-http/cache-plugin: ^1.2
- php-http/client-common: ^1.3
- php-http/client-implementation: ^1.0
- php-http/discovery: ^1.0
- php-http/httplug: ^1.1
- psr/cache: ^1.0
- psr/http-message: ^1.0
Requires (Dev)
- guzzlehttp/psr7: ^1.2
- php-http/guzzle6-adapter: ^1.0
- phpunit/phpunit: ^4.0 || ^5.5
- sllh/php-cs-fixer-styleci-bridge: ^1.3
- dev-master / 2.1.x-dev
- 2.0.1
- 2.0.0
- 2.0.0-rc4
- 2.0.0-rc3
- 2.0.0-rc2
- 2.0.0-rc1
- 2.0.0-rc
- 1.7.x-dev
- 1.7.1
- 1.7.0
- 1.6.1
- 1.6.0
- 1.5.1
- 1.5.0
- 1.4.15
- 1.4.14
- 1.4.13
- 1.4.12
- 1.4.11
- 1.4.10
- 1.4.9
- 1.4.8
- 1.4.7
- 1.4.6
- 1.4.5
- 1.4.4
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4.0
- 1.3.1
- 1.3.0
- 1.2.7
- 1.2.6
- 1.2.5
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.2
- 1.0.1
- 1.0.0
- 0.1
This package is not auto-updated.
Last update: 2024-12-11 21:22:53 UTC
README
In 2.0 lib no longer uses guzzle 3.7, instead it has an HTTPlug abstraction layer.
For old version please check:
A simple Object Oriented wrapper for GitHub API, written with PHP5.
Uses GitHub API v3. The object API is very similar to the RESTful API.
Features
- Follows PSR-4 conventions and coding standard: autoload friendly
- Light and fast thanks to lazy loading of API classes
- Extensively tested and documented
Requirements
- PHP >= 5.5
- Guzzle library,
- (optional) PHPUnit to run tests.
Autoload
The new version of php-github-api
using Composer.
The first step to use php-github-api
is to download composer:
$ curl -s http://getcomposer.org/installer | php
Then run the following command to require the library:
$ php composer.phar require knplabs/github-api php-http/guzzle6-adapter
Why php-http/guzzle6-adapter
? We are decoupled form any HTTP messaging client with help by HTTPlug. Read about clients in our docs.
Using Laravel?
Laravel GitHub by Graham Campbell might interest you.
Basic usage of php-github-api
client
<?php // This file is generated by Composer require_once 'vendor/autoload.php'; $client = new \Github\Client(); $repositories = $client->api('user')->repositories('ornicar');
From $client
object, you can access to all GitHub.
Cache usage
This example uses the PSR6 cache pool redis-adapter. See http://www.php-cache.com/ for alternatives.
<?php // This file is generated by Composer require_once 'vendor/autoload.php'; use Cache\Adapter\Redis\RedisCachePool; $client = new \Redis(); $client->connect('127.0.0.1', 6379); // Create a PSR6 cache pool $pool = new RedisCachePool($client); $client = new \Github\Client(); $client->addCache($pool); // Do some request // Stop using cache $client->removeCache();
Using cache, the client will get cached responses if resources haven't changed since last time,
without reaching the X-Rate-Limit
imposed by github.
Documentation
See the doc
directory for more detailed documentation.
License
php-github-api
is licensed under the MIT License - see the LICENSE file for details
Credits
Sponsored by
Contributors
- Thanks to Thibault Duplessis aka. ornicar for his first version of this library.
- Thanks to Joseph Bielawski aka. stloyd for his contributions and support.
- Thanks to noloh for his contribution on the Object API.
- Thanks to bshaffer for his contribution on the Repo API.
- Thanks to Rolf van de Krol for his countless contributions.
- Thanks to Nicolas Pastorino for his contribution on the Pull Request API.
- Thanks to Edoardo Rivello for his contribution on the Gists API.
Thanks to GitHub for the high quality API and documentation.