Dokumentace Guzzle

Guzzle je klient HTTP v jazyce PHP, který umožňuje snadné odesílání požadavků HTTP a triviální integraci s webovými službami.

  • Jednoduché rozhraní pro vytváření řetězců dotazů, POST požadavků, streamování velkých datových toků odesílání, streamování velkých stahování, používání souborů cookie HTTP, odesílání dat JSON, atd...
  • Může odesílat synchronní i asynchronní požadavky pomocí stejného rozhraní.
  • Používá rozhraní PSR-7 pro požadavky, odpovědi a toky. To umožňuje používat s Guzzle další knihovny kompatibilní s PSR-7.
  • abstrahuje základní transport HTTP, což umožňuje psát kód nezávislý na prostředí a transportu; tj. žádná pevná závislost na cURL, PHP, sokety nebo neblokující smyčky událostí.
  • Systém middlewaru umožňuje rozšiřovat a skládat chování klienta.
$client = new GuzzleHttp\Client();
$res = $client->request('GET', 'https://api.github.com/user', [
    'auth' => ['user', 'pass']
]);
echo $res->getStatusCode();
// "200"
echo $res->getHeader('content-type')[0];
// 'application/json; charset=utf8'
echo $res->getBody();
// {"type":"User"...'

// Send an asynchronous request.
$request = new \GuzzleHttp\Psr7\Request('GET', 'http://httpbin.org');
$promise = $client->sendAsync($request)->then(function ($response) {
    echo 'I completed! ' . $response->getBody();
});
$promise->wait();

Uživatelská příručka