Overview

Namespaces

  • Guzzle
    • Batch
      • Exception
    • Cache
    • Common
      • Exception
    • Http
      • Curl
      • Exception
      • Message
        • Header
      • QueryAggregator
    • Inflection
    • Iterator
    • Log
    • Parser
      • Cookie
      • Message
      • UriTemplate
      • Url
    • Plugin
      • Async
      • Backoff
      • Cache
      • Cookie
        • CookieJar
        • Exception
      • CurlAuth
      • ErrorResponse
        • Exception
      • History
      • Log
      • Md5
      • Mock
      • Oauth
    • Service
      • Builder
      • Command
        • Factory
        • LocationVisitor
          • Request
          • Response
      • Description
      • Exception
      • Resource
    • Stream
    • Tests
      • Batch
      • Cache
      • Common
        • Cache
        • Exception
      • Http
        • Curl
        • Exception
        • Message
          • Header
      • Inflection
      • Iterator
      • Log
      • Message
      • Mock
      • Parser
        • Cookie
        • Message
      • Parsers
        • UriTemplate
      • Plugin
        • Async
        • Backoff
        • Cache
        • Cookie
          • CookieJar
        • CurlAuth
        • ErrorResponse
        • History
        • Log
        • Md5
        • Mock
        • Oauth
        • Redirect
      • Service
        • Builder
        • Command
          • LocationVisitor
            • Request
            • Response
        • Description
        • Exception
        • Mock
          • Command
            • Sub
          • Model
        • Resource
      • Stream
  • None
  • Omnipay
    • Common
      • Exception
      • Message
    • Dummy
      • Message
    • VivaPayments
      • Message
  • PHP

Classes

  • CurlHandle
  • CurlMulti
  • CurlMultiProxy
  • CurlVersion
  • RequestMediator

Interfaces

  • CurlMultiInterface
  • Overview
  • Namespace
  • Class
  • Tree

Class CurlMulti

Send Guzzle\Http\Message\RequestInterface objects in parallel using curl_multi

Guzzle\Common\AbstractHasDispatcher implements Guzzle\Common\HasDispatcherInterface
Extended by Guzzle\Http\Curl\CurlMulti implements Guzzle\Http\Curl\CurlMultiInterface

Direct known subclasses

Guzzle\Tests\Mock\MockMulti
Namespace: Guzzle\Http\Curl
Located at src/Guzzle/Http/Curl/CurlMulti.php
Methods summary
public
# __construct( $selectTimeout = 1.0 )
public
# __destruct( )
public Guzzle\Http\Curl\CurlMultiInterface
# add( Guzzle\Http\Message\RequestInterface $request )

Add a request to the pool.

Add a request to the pool.

Parameters

$request
Request to add

Returns

Guzzle\Http\Curl\CurlMultiInterface

Implementation of

Guzzle\Http\Curl\CurlMultiInterface::add()
public array
# all( )

Get an array of attached Guzzle\Http\Message\RequestInterface objects

Get an array of attached Guzzle\Http\Message\RequestInterface objects

Returns

array

Implementation of

Guzzle\Http\Curl\CurlMultiInterface::all()
public boolean
# remove( Guzzle\Http\Message\RequestInterface $request )

Remove a request from the pool.

Remove a request from the pool.

Parameters

$request
Request to remove

Returns

boolean
Returns true on success or false on failure

Implementation of

Guzzle\Http\Curl\CurlMultiInterface::remove()
public
# reset( boolean $hard = false )

Reset the state and remove any attached RequestInterface objects

Reset the state and remove any attached RequestInterface objects

Parameters

$hard
Set to true to close and reopen any open multi handles

Implementation of

Guzzle\Http\Curl\CurlMultiInterface::reset()
public
# send( )

Send a pool of Guzzle\Http\Message\RequestInterface requests.

Send a pool of Guzzle\Http\Message\RequestInterface requests.

Throws

ExceptionCollection
if any requests threw exceptions during the transfer.

Implementation of

Guzzle\Http\Curl\CurlMultiInterface::send()
public
# count( )

Implementation of

Countable::count()
protected
# throwMultiException( array $exceptions, array $successful )

Build and throw a MultiTransferException

Build and throw a MultiTransferException

Parameters

$exceptions
Exceptions encountered
$successful
Successful requests

Throws

Guzzle\Http\Exception\MultiTransferException
protected
# beforeSend( Guzzle\Http\Message\RequestInterface $request )

Prepare for sending

Prepare for sending

Parameters

$request
Request to prepare

Throws

Exception
on error preparing the request
protected Guzzle\Http\Curl\CurlHandle
# createCurlHandle( Guzzle\Http\Message\RequestInterface $request )

Create a curl handle for a request

Create a curl handle for a request

Parameters

$request
Request

Returns

Guzzle\Http\Curl\CurlHandle
protected
# perform( )

Get the data from the multi handle

Get the data from the multi handle

protected
# removeErroredRequest( Guzzle\Http\Message\RequestInterface $request, Exception $e = null )

Remove a request that encountered an exception

Remove a request that encountered an exception

Parameters

$request
Request to remove
$e
Exception encountered
protected
# processResponse( Guzzle\Http\Message\RequestInterface $request, Guzzle\Http\Curl\CurlHandle $handle, array $curl )

Check for errors and fix headers of a request based on a curl response

Check for errors and fix headers of a request based on a curl response

Parameters

$request
Request to process
$handle
Curl handle object
$curl
Array returned from curl_multi_info_read

Throws

Guzzle\Http\Exception\CurlException
on Curl error
protected
# removeHandle( Guzzle\Http\Message\RequestInterface $request )

Remove a curl handle from the curl multi object

Remove a curl handle from the curl multi object

Parameters

$request
Request that owns the handle
Methods inherited from Guzzle\Common\AbstractHasDispatcher
addSubscriber(), dispatch(), getAllEvents(), getEventDispatcher(), setEventDispatcher()
Constants inherited from Guzzle\Http\Curl\CurlMultiInterface
ADD_REQUEST, BLOCKING, MULTI_EXCEPTION, POLLING_REQUEST, REMOVE_REQUEST
Properties summary
protected resource $multiHandle

cURL multi handle.

cURL multi handle.

#
protected array $requests

Attached Guzzle\Http\Message\RequestInterface objects.

Attached Guzzle\Http\Message\RequestInterface objects.

#
protected SplObjectStorage $handles

RequestInterface to CurlHandle hash

RequestInterface to CurlHandle hash

#
protected array $resourceHash

Hash mapping curl handle resource IDs to request objects

Hash mapping curl handle resource IDs to request objects

#
protected array $exceptions

Queued exceptions

Queued exceptions

# array()
protected array $successful

Requests that succeeded

Requests that succeeded

# array()
protected array $multiErrors

cURL multi error values and codes

cURL multi error values and codes

# array( CURLM_BAD_HANDLE => array('CURLM_BAD_HANDLE', 'The passed-in handle is not a valid CURLM handle.'), CURLM_BAD_EASY_HANDLE => array('CURLM_BAD_EASY_HANDLE', "An easy handle was not good/valid. It could mean that it isn't an easy handle at all, or possibly that the handle already is in used by this or another multi handle."), CURLM_OUT_OF_MEMORY => array('CURLM_OUT_OF_MEMORY', 'You are doomed.'), CURLM_INTERNAL_ERROR => array('CURLM_INTERNAL_ERROR', 'This can only be returned if libcurl bugs. Please report it to us!') )
protected float $selectTimeout
#
Properties inherited from Guzzle\Common\AbstractHasDispatcher
$eventDispatcher
Omnipay Viva Payments Gateway Module API Documentation API documentation generated by ApiGen