PHP Класс Zend_Http_Client

Показать файл Открыть проект Примеры использования класса

Защищенные свойства (Protected)

Свойство Тип Описание
$_fileInfoDb resource This variable is populated the first time _detectFileMimeType is called and is then reused on every call to this method
$_queryBracketsEscaped boolean Status if the http_build_query function escapes brackets
$_unmaskStatus boolean Status for unmasking GET array params
$adapter Zend_Http_Client_Adapter_Interface The adapter used to perform the actual connection to the server
$auth array | null Expected to be an associative array with this structure: $this->auth = array('user' => 'username', 'password' => 'password', 'type' => 'basic') Where 'type' should be one of the supported authentication types (see the AUTH_* constants), for example 'basic' or 'digest'. If null, no authentication will be used.
$body_field_order array An associative array, where each element is of the format: '' => VTYPE_SCALAR | VTYPE_FILE
$config array Configuration array, set using the constructor or using ::setConfig()
$cookiejar Zend_Http_CookieJar The client's cookie jar
$enctype string Request body content type (for POST requests)
$files array An associative array, where each element is of the format: 'name' => array('filename.txt', 'text/plain', 'This is the actual file contents')
$headers array Associative array of request headers
$last_request string The last HTTP request sent by the client, as string
$last_response Zend_Http_Response The last HTTP response received by the client
$method string HTTP request method
$paramsGet array Associative array of GET parameters
$paramsPost array Associative array of POST parameters
$raw_post_data string The raw post data to send. Could be set by setRawData($data, $enctype).
$redirectCounter integer Redirection counter
$uri Zend_Uri_Http Request URI

Открытые методы

Метод Описание
__construct ( Zend_Uri_Http | string $uri = null, array $config = null ) Constructor method. Will create a new HTTP client. Accepts the target URL and optionally configuration array.
encodeAuthHeader ( string $user, string $password, string $type = self::AUTH_BASIC ) : string Create a HTTP authentication "Authorization:" header according to the specified user, password and authentication method.
encodeFormData ( string $boundary, string $name, mixed $value, string $filename = null, array $headers = [] ) : string Encode data to a multipart/form-data part suitable for a POST request.
getAdapter ( ) : Zend_Http_Client_Adapter_Interface Load the connection adapter
getCookieJar ( ) : Zend_Http_CookieJar | null Return the current cookie jar or null if none.
getHeader ( string $key ) : string | array | null Get the value of a specific header
getLastRequest ( ) : string Get the last HTTP request as string
getLastResponse ( ) : Zend_Http_Response Get the last HTTP response received by this client
getRedirectionsCount ( ) : integer Get the number of redirections done on the last request
getStream ( ) : boolean | string Get status of streaming for received data
getUnmaskStatus ( ) : boolean Returns the currently configured unmask status
getUri ( boolean $as_string = false ) : Zend_Uri_Http | string Get the URI for the next request
request ( string $method = null ) : Zend_Http_Response Send the HTTP request and return an HTTP response object
resetParameters ( boolean $clearAll = false ) : Zend_Http_Client Clear all GET and POST parameters
setAdapter ( Zend_Http_Client_Adapter_Interface | string $adapter ) : null Load the connection adapter
setAuth ( string | false $user, string $password = '', string $type = self::AUTH_BASIC ) : Zend_Http_Client Set HTTP authentication parameters
setConfig ( $config = [] ) : Zend_Http_Client Set configuration parameters for this HTTP client
setCookie ( Zend_Http_Cookie | string $cookie, string | null $value = null ) : Zend_Http_Client Add a cookie to the request. If the client has no Cookie Jar, the cookies will be added directly to the headers array as "Cookie" headers.
setCookieJar ( Zend_Http_CookieJar | boolean $cookiejar = true ) : Zend_Http_Client Set the HTTP client's cookie jar.
setEncType ( string $enctype = self::ENC_URLENCODED ) : Zend_Http_Client Set the encoding type for POST data
setFileUpload ( string $filename, string $formname, string $data = null, string $ctype = null ) : Zend_Http_Client Set a file to upload (using a POST request)
setHeaders ( string | array $name, mixed $value = null ) : Zend_Http_Client Set one or more request headers
setMethod ( string $method = self::GET ) : Zend_Http_Client Set the next request's method
setParameterGet ( string | array $name, string $value = null ) : Zend_Http_Client Set a GET parameter for the request. Wrapper around _setParameter
setParameterPost ( string | array $name, string $value = null ) : Zend_Http_Client Set a POST parameter for the request. Wrapper around _setParameter
setRawData ( string | resource $data, string $enctype = null ) : Zend_Http_Client Set the raw (already encoded) POST data.
setStream ( string | boolean $streamfile = true ) : Zend_Http_Client Set streaming for received data
setUnmaskStatus ( boolean $status = true ) : Zend_Http_Client Set the unmask feature for GET parameters as array
setUri ( Zend_Uri_Http | string $uri ) : Zend_Http_Client Set the URI for the next request

Защищенные методы

Метод Описание
_detectFileMimeType ( string $file ) : string Attempt to detect the MIME type of a file using available extensions
_flattenParametersArray ( array $parray, string $prefix = null ) : array Convert an array of parameters into a flat array of (key, value) pairs
_getParametersRecursive ( array $parray, boolean $urlencode = false ) : array Helper method that gets a possibly multi-level parameters array (get or post) and flattens it.
_openTempStream ( ) : resource Create temporary stream
_prepareBody ( ) : string Prepare the request body (for POST and PUT requests)
_prepareHeaders ( ) : array Prepare the request headers
_setParameter ( string $type, string $name, string $value ) : null Set a GET or POST parameter - used by SetParameterGet and SetParameterPost

Описание методов

__construct() публичный Метод

Constructor method. Will create a new HTTP client. Accepts the target URL and optionally configuration array.
public __construct ( Zend_Uri_Http | string $uri = null, array $config = null )
$uri Zend_Uri_Http | string
$config array Configuration key-value pairs.

_detectFileMimeType() защищенный Метод

This method will try to detect the MIME type of a file. If the fileinfo extension is available, it will be used. If not, the mime_magic extension which is deprected but is still available in many PHP setups will be tried. If neither extension is available, the default application/octet-stream MIME type will be returned
protected _detectFileMimeType ( string $file ) : string
$file string File path
Результат string MIME type

_flattenParametersArray() защищенный статический Метод

Will flatten a potentially multi-dimentional array of parameters (such as POST parameters) into a flat array of (key, value) paris. In case of multi-dimentional arrays, square brackets ([]) will be added to the key to indicate an array.
С версии: 1.9
protected static _flattenParametersArray ( array $parray, string $prefix = null ) : array
$parray array
$prefix string
Результат array

_getParametersRecursive() защищенный Метод

The method returns an array of (key, value) pairs (because keys are not necessarily unique. If one of the parameters in as array, it will also add a [] suffix to the key. This method is deprecated since Zend Framework 1.9 in favour of self::_flattenParametersArray() and will be dropped in 2.0
Устаревший: since 1.9
protected _getParametersRecursive ( array $parray, boolean $urlencode = false ) : array
$parray array The parameters array
$urlencode boolean Whether to urlencode the name and value
Результат array

_openTempStream() защищенный Метод

Create temporary stream
protected _openTempStream ( ) : resource
Результат resource

_prepareBody() защищенный Метод

Prepare the request body (for POST and PUT requests)
protected _prepareBody ( ) : string
Результат string

_prepareHeaders() защищенный Метод

Prepare the request headers
protected _prepareHeaders ( ) : array
Результат array

_setParameter() защищенный Метод

Set a GET or POST parameter - used by SetParameterGet and SetParameterPost
protected _setParameter ( string $type, string $name, string $value ) : null
$type string GET or POST
$name string
$value string
Результат null

encodeAuthHeader() публичный статический Метод

Create a HTTP authentication "Authorization:" header according to the specified user, password and authentication method.
См. также: http://www.faqs.org/rfcs/rfc2617.html
public static encodeAuthHeader ( string $user, string $password, string $type = self::AUTH_BASIC ) : string
$user string
$password string
$type string
Результат string

encodeFormData() публичный статический Метод

Encode data to a multipart/form-data part suitable for a POST request.
public static encodeFormData ( string $boundary, string $name, mixed $value, string $filename = null, array $headers = [] ) : string
$boundary string
$name string
$value mixed
$filename string
$headers array Associative array of optional headers @example ("Content-Transfer-Encoding" => "binary")
Результат string

getAdapter() публичный Метод

Load the connection adapter
public getAdapter ( ) : Zend_Http_Client_Adapter_Interface
Результат Zend_Http_Client_Adapter_Interface $adapter

getCookieJar() публичный Метод

Return the current cookie jar or null if none.
public getCookieJar ( ) : Zend_Http_CookieJar | null
Результат Zend_Http_CookieJar | null

getHeader() публичный Метод

Note that if the header has more than one value, an array will be returned.
public getHeader ( string $key ) : string | array | null
$key string
Результат string | array | null The header value or null if it is not set

getLastRequest() публичный Метод

Get the last HTTP request as string
public getLastRequest ( ) : string
Результат string

getLastResponse() публичный Метод

If $config['storeresponse'] is set to false, or no response was stored yet, will return null
public getLastResponse ( ) : Zend_Http_Response
Результат Zend_Http_Response or null if none

getRedirectionsCount() публичный Метод

Get the number of redirections done on the last request
public getRedirectionsCount ( ) : integer
Результат integer

getStream() публичный Метод

Get status of streaming for received data
public getStream ( ) : boolean | string
Результат boolean | string

getUnmaskStatus() публичный Метод

Returns the currently configured unmask status
public getUnmaskStatus ( ) : boolean
Результат boolean

getUri() публичный Метод

Get the URI for the next request
public getUri ( boolean $as_string = false ) : Zend_Uri_Http | string
$as_string boolean If true, will return the URI as a string
Результат Zend_Uri_Http | string

request() публичный Метод

Send the HTTP request and return an HTTP response object
public request ( string $method = null ) : Zend_Http_Response
$method string
Результат Zend_Http_Response

resetParameters() публичный Метод

Should be used to reset the request parameters if the client is used for several concurrent requests. clearAll parameter controls if we clean just parameters or also headers and last_*
public resetParameters ( boolean $clearAll = false ) : Zend_Http_Client
$clearAll boolean Should all data be cleared?
Результат Zend_Http_Client

setAdapter() публичный Метод

While this method is not called more than one for a client, it is seperated from ->request() to preserve logic and readability
public setAdapter ( Zend_Http_Client_Adapter_Interface | string $adapter ) : null
$adapter Zend_Http_Client_Adapter_Interface | string
Результат null

setAuth() публичный Метод

$type should be one of the supported types - see the self::AUTH_* constants. To enable authentication: $this->setAuth('shahar', 'secret', Zend_Http_Client::AUTH_BASIC); To disable authentication: $this->setAuth(false);
См. также: http://www.faqs.org/rfcs/rfc2617.html
public setAuth ( string | false $user, string $password = '', string $type = self::AUTH_BASIC ) : Zend_Http_Client
$user string | false User name or false disable authentication
$password string Password
$type string Authentication type
Результат Zend_Http_Client

setConfig() публичный Метод

Set configuration parameters for this HTTP client
public setConfig ( $config = [] ) : Zend_Http_Client
Результат Zend_Http_Client

setCookie() публичный Метод

Add a cookie to the request. If the client has no Cookie Jar, the cookies will be added directly to the headers array as "Cookie" headers.
public setCookie ( Zend_Http_Cookie | string $cookie, string | null $value = null ) : Zend_Http_Client
$cookie Zend_Http_Cookie | string
$value string | null If "cookie" is a string, this is the cookie value.
Результат Zend_Http_Client

setCookieJar() публичный Метод

A cookie jar is an object that holds and maintains cookies across HTTP requests and responses.
public setCookieJar ( Zend_Http_CookieJar | boolean $cookiejar = true ) : Zend_Http_Client
$cookiejar Zend_Http_CookieJar | boolean Existing cookiejar object, true to create a new one, false to disable
Результат Zend_Http_Client

setEncType() публичный Метод

Set the encoding type for POST data
public setEncType ( string $enctype = self::ENC_URLENCODED ) : Zend_Http_Client
$enctype string
Результат Zend_Http_Client

setFileUpload() публичный Метод

Can be used in two ways: 1. $data is null (default): $filename is treated as the name if a local file which will be read and sent. Will try to guess the content type using mime_content_type(). 2. $data is set - $filename is sent as the file name, but $data is sent as the file contents and no file is read from the file system. In this case, you need to manually set the Content-Type ($ctype) or it will default to application/octet-stream.
public setFileUpload ( string $filename, string $formname, string $data = null, string $ctype = null ) : Zend_Http_Client
$filename string Name of file to upload, or name to save as
$formname string Name of form element to send as
$data string Data to send (if null, $filename is read and sent)
$ctype string Content type to use (if $data is set and $ctype is null, will be application/octet-stream)
Результат Zend_Http_Client

setHeaders() публичный Метод

This function can be used in several ways to set the client's request headers: 1. By providing two parameters: $name as the header to set (e.g. 'Host') and $value as it's value (e.g. 'www.example.com'). 2. By providing a single header string as the only parameter e.g. 'Host: www.example.com' 3. By providing an array of headers as the first parameter e.g. array('host' => 'www.example.com', 'x-foo: bar'). In This case the function will call itself recursively for each array item.
public setHeaders ( string | array $name, mixed $value = null ) : Zend_Http_Client
$name string | array Header name, full header string ('Header: value') or an array of headers
$value mixed Header value or null
Результат Zend_Http_Client

setMethod() публичный Метод

Validated the passed method and sets it. If we have files set for POST requests, and the new method is not POST, the files are silently dropped.
public setMethod ( string $method = self::GET ) : Zend_Http_Client
$method string
Результат Zend_Http_Client

setParameterGet() публичный Метод

Set a GET parameter for the request. Wrapper around _setParameter
public setParameterGet ( string | array $name, string $value = null ) : Zend_Http_Client
$name string | array
$value string
Результат Zend_Http_Client

setParameterPost() публичный Метод

Set a POST parameter for the request. Wrapper around _setParameter
public setParameterPost ( string | array $name, string $value = null ) : Zend_Http_Client
$name string | array
$value string
Результат Zend_Http_Client

setRawData() публичный Метод

This function is here for two reasons: 1. For advanced user who would like to set their own data, already encoded 2. For backwards compatibilty: If someone uses the old post($data) method. this method will be used to set the encoded data. $data can also be stream (such as file) from which the data will be read.
public setRawData ( string | resource $data, string $enctype = null ) : Zend_Http_Client
$data string | resource
$enctype string
Результат Zend_Http_Client

setStream() публичный Метод

Set streaming for received data
public setStream ( string | boolean $streamfile = true ) : Zend_Http_Client
$streamfile string | boolean Stream file, true for temp file, false/null for no streaming
Результат Zend_Http_Client

setUnmaskStatus() публичный Метод

Example: foo%5B0%5D=a&foo%5B1%5D=b becomes foo=a&foo=b This is usefull for some services
public setUnmaskStatus ( boolean $status = true ) : Zend_Http_Client
$status boolean
Результат Zend_Http_Client

setUri() публичный Метод

Set the URI for the next request
public setUri ( Zend_Uri_Http | string $uri ) : Zend_Http_Client
$uri Zend_Uri_Http | string
Результат Zend_Http_Client

Описание свойств

$_fileInfoDb защищенное статическое свойство

This variable is populated the first time _detectFileMimeType is called and is then reused on every call to this method
protected static resource $_fileInfoDb
Результат resource

$_queryBracketsEscaped защищенное свойство

Status if the http_build_query function escapes brackets
protected bool $_queryBracketsEscaped
Результат boolean

$_unmaskStatus защищенное свойство

Status for unmasking GET array params
protected bool $_unmaskStatus
Результат boolean

$adapter защищенное свойство

The adapter used to perform the actual connection to the server
protected Zend_Http_Client_Adapter_Interface $adapter
Результат Zend_Http_Client_Adapter_Interface

$auth защищенное свойство

Expected to be an associative array with this structure: $this->auth = array('user' => 'username', 'password' => 'password', 'type' => 'basic') Where 'type' should be one of the supported authentication types (see the AUTH_* constants), for example 'basic' or 'digest'. If null, no authentication will be used.
protected array|null $auth
Результат array | null

$body_field_order защищенное свойство

An associative array, where each element is of the format: '' => VTYPE_SCALAR | VTYPE_FILE
protected array $body_field_order
Результат array

$config защищенное свойство

Configuration array, set using the constructor or using ::setConfig()
protected array $config
Результат array

$cookiejar защищенное свойство

The client's cookie jar
protected Zend_Http_CookieJar $cookiejar
Результат Zend_Http_CookieJar

$enctype защищенное свойство

Request body content type (for POST requests)
protected string $enctype
Результат string

$files защищенное свойство

An associative array, where each element is of the format: 'name' => array('filename.txt', 'text/plain', 'This is the actual file contents')
protected array $files
Результат array

$headers защищенное свойство

Associative array of request headers
protected array $headers
Результат array

$last_request защищенное свойство

The last HTTP request sent by the client, as string
protected string $last_request
Результат string

$last_response защищенное свойство

The last HTTP response received by the client
protected Zend_Http_Response $last_response
Результат Zend_Http_Response

$method защищенное свойство

HTTP request method
protected string $method
Результат string

$paramsGet защищенное свойство

Associative array of GET parameters
protected array $paramsGet
Результат array

$paramsPost защищенное свойство

Associative array of POST parameters
protected array $paramsPost
Результат array

$raw_post_data защищенное свойство

The raw post data to send. Could be set by setRawData($data, $enctype).
protected string $raw_post_data
Результат string

$redirectCounter защищенное свойство

Redirection counter
protected int $redirectCounter
Результат integer

$uri защищенное свойство

Request URI
protected Zend_Uri_Http $uri
Результат Zend_Uri_Http