Guzzle Dokumentation

Guzzle är en PHP HTTP-klient som gör det enkelt att skicka HTTP-begäranden och trivialt att integrera med webbtjänster.

  • Enkelt gränssnitt för att bygga frågetecken, POST-begäranden och stora strömningar. uppladdningar, strömning av stora nedladdningar, användning av HTTP-cookies, uppladdning av JSON-data, etc...
  • Kan skicka både synkrona och asynkrona förfrågningar via samma gränssnitt.
  • Använder PSR-7-gränssnitt för förfrågningar, svar och strömmar. Detta gör det möjligt att att använda andra PSR-7-kompatibla bibliotek med Guzzle.
  • Abstracts bort den underliggande HTTP-transporten, vilket gör att du kan skriva miljö- och transportoberoende kod, dvs. inget hårt beroende av cURL, PHP-strömmar, sockets eller icke-blockerande händelseslingor.
  • Med hjälp av mellanvarusystemet kan du öka och komponera klienternas beteende.
$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();