Um wrapper simples orientado a objetos para API GitHub, escrito com PHP.
Usa GitHub API v3 e suporta GitHub API v4. A API de objeto (v3) é muito semelhante à API RESTful.
Através do Compositor.
Este comando irá colocá-lo em funcionamento rapidamente com um cliente Guzzle HTTP.
composer require knplabs/github-api:^3.0 guzzlehttp/guzzle:^7.0.1 http-interop/http-factory-guzzle:^1.0
Estamos dissociados de qualquer cliente de mensagens HTTP com a ajuda do HTTPlug.
composer require knplabs/github-api:^3.0 symfony/http-client nyholm/psr7
Para configurar o cliente Github com este cliente HTTP
use Github Client ;
use Symfony Component HttpClient HttplugClient ;
$ client = Client:: createWithHttpClient ( new HttplugClient ());
Leia mais sobre como usar diferentes clientes em nossos documentos.
Para integrar esta biblioteca no laravel Graham Campbell criou graham-campbell/github. Veja as instruções de instalação para começar no laravel.
php-github-api
<?php
// This file is generated by Composer
require_once __DIR__ . ' /vendor/autoload.php ' ;
$ client = new Github Client ();
$ repositories = $ client -> api ( ' user ' )-> repositories ( ' ornicar ' );
No objeto $client
, você tem acesso a todos os endpoints de API do GitHub disponíveis.
Este exemplo usa o adaptador redis do pool de cache PSR6. Consulte http://www.php-cache.com/ para alternativas.
<?php
// This file is generated by Composer
require_once __DIR__ . ' /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 ();
Usando o cache, o cliente obterá respostas em cache se os recursos não tiverem sido alterados desde a última vez, sem atingir o X-Rate-Limit
imposto pelo github.
Consulte o diretório doc
para documentação mais detalhada.
php-github-api
está licenciado sob a licença MIT - consulte o arquivo LICENSE para obter detalhes
Por favor, leia esta postagem primeiro.
Esta biblioteca é mantida pelas seguintes pessoas (classificadas em ordem alfabética):
Obrigado ao GitHub pela API e documentação de alta qualidade.