Installation

Requirements

  1. PHP 5.3.3+ compiled with the cURL extension
  2. A recent version of cURL 7.16.2+ compiled with OpenSSL and zlib

Installing Guzzle

After installing, you need to require the autoloader:

require 'Guzzle/autoload.php';

Using only specific parts of Guzzle

While you can always just rely on guzzle/guzzle, Guzzle provides several smaller parts of Guzzle as individual packages available through Composer.

Package name Description
guzzle/common Provides Guzzle\Common
guzzle/http Provides Guzzle\Http
guzzle/parser Provides Guzzle\Parser
guzzle/batch Provides Guzzle\Batch
guzzle/cache Provides Guzzle\Cache
guzzle/inflection Provides Guzzle\Inflection
guzzle/iterator Provides Guzzle\Iterator
guzzle/log Provides Guzzle\Log
guzzle/plugin Provides Guzzle\Plugin (all plugins)
guzzle/plugin-async Provides Guzzle\Plugin\Async
guzzle/plugin-backoff Provides Guzzle\Plugin\BackoffPlugin
guzzle/plugin-cache Provides Guzzle\Plugin\Cache
guzzle/plugin-cookie Provides Guzzle\Plugin\Cookie
guzzle/plugin-error-response Provides Guzzle\Plugin\ErrorResponse
guzzle/plugin-history Provides Guzzle\Plugin\History
guzzle/plugin-log Provides Guzzle\Plugin\Log
guzzle/plugin-md5 Provides Guzzle\Plugin\Md5
guzzle/plugin-mock Provides Guzzle\Plugin\Mock
guzzle/plugin-oauth Provides Guzzle\Plugin\Oauth
guzzle/service Provides Guzzle\Service
guzzle/stream Provides Guzzle\Stream

Bleeding edge

During your development, you can keep up with the latest changes on the master branch by setting the version requirement for Guzzle to dev-master.

{
   "require": {
      "guzzle/guzzle": "dev-master"
   }
}

PEAR

Guzzle can be installed through PEAR:

pear channel-discover guzzlephp.org/pear
pear install guzzle/guzzle

You can install a specific version of Guzzle by providing a version number suffix:

pear install guzzle/guzzle-3.9.0

Contributing to Guzzle

In order to contribute, you'll need to checkout the source from GitHub and install Guzzle's dependencies using Composer:

git clone https://github.com/guzzle/guzzle.git
cd guzzle && curl -s http://getcomposer.org/installer | php && ./composer.phar install --dev

Guzzle is unit tested with PHPUnit. You will need to create your own phpunit.xml file in order to run the unit tests (or just copy phpunit.xml.dist to phpunit.xml). Run the tests using the vendored PHPUnit binary:

vendor/bin/phpunit

You'll need to install node.js v0.5.0 or newer in order to test the cURL implementation.

Framework integrations

Bundles are available on GitHub:

A Guzzle Silex service provider is available on GitHub.