guzzlehttp/guzzle

Guzzle, PHP HTTP client

Latest Version
Build Status
Total Downloads

Guzzle is a PHP HTTP client that makes it easy to send HTTP requests and
trivial to integrate with web services.

$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://api.github.com/repos/guzzle/guzzle');

echo $response->getStatusCode(); # 200
echo $response->getHeaderLine('content-type'); # 'application/json; charset=utf8'
echo $response->getBody(); # '{"id": 1420053, "name": "guzzle", ...}'

# 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();

Help and docs

Installing Guzzle

The recommended way to install Guzzle is through
Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php

Next, run the Composer command to install the latest stable version of Guzzle:

composer require guzzlehttp/guzzle

After installing, you need to require Composer's autoloader:

require 'vendor/autoload.php';

You can then later update Guzzle using composer:

composer update

Version Guidance

Version Status Packagist Namespace Repo Docs PSR-7 PHP Version
3.x EOL guzzle/guzzle Guzzle v3 v3 No >= 5.3.3
4.x EOL guzzlehttp/guzzle GuzzleHttp v4 N/A No >= 5.4
5.x Maintained guzzlehttp/guzzle GuzzleHttp v5 v5 No >= 5.4
6.x Latest guzzlehttp/guzzle GuzzleHttp v6 v6 Yes >= 5.5
Last update: March 15th at 2:29pm