Zend_Http_Response

Introduction

Zend_Http_Response provides easy access to an
HTTP responses message, as well as a set of static methods for
parsing HTTP response messages. Usually,
Zend_Http_Response is used as an object returned by a
Zend_Http_Client request.

In most cases, a Zend_Http_Response object will be instantiated
using the fromString() method, which reads a string containing a
HTTP response message, and returns a new
Zend_Http_Response object:

Example #1 Instantiating a Zend_Http_Response Object Using the Factory Method

getHeader($header): Get a specific
HTTP response header, specified by $header

getHeadersAsString($status_line, $br): Get
the entire set of headers as a string. If $status_line is
TRUE (default), the first status line (eg. "HTTP/1.1
200 OK") will also be returned. Lines are broken with the
$br parameter (Can be, for example, "<br />".
Default "\n")

asString($br): Get the entire response message as
a string. Lines are broken with the $br parameter (Can be, for example,
"<br />". Default "\n"). You can also use the magic method
__toString() when casting the object as a string.
It will then proxy to asString().

Note: Always check return value
Since a response can contain several instances of the same header,
the getHeader() method and getHeaders() method may return either a
single string, or an array of strings for each header. You should
always check whether the returned value is a string or array.

Static HTTP Response Parsers

The Zend_Http_Response class also includes several
internally-used methods for processing and parsing HTTP response
messages. These methods are all exposed as static methods, which means they can be
used externally, even if you do not need to instantiate a response
object, and just want to extract a specific part of the response.

Zend_Http_Response::extractMessage($response_str):
Extract and return the HTTP response message (eg. "OK" or
"File Not Found") from $response_str

Zend_Http_Response::extractVersion($response_str):
Extract and return the HTTP version (eg. 1.1 or 1.0) from
$response_str

Zend_Http_Response::extractHeaders($response_str):
Extract and return the HTTP response headers from
$response_str as an array

Zend_Http_Response::extractBody($response_str):
Extract and return the HTTP response body from
$response_str

Zend_Http_Response::responseCodeAsText($code,
$http11): Get the standard HTTP response
message for a response code $code. For example, will return "Internal Server
Error" if $code is 500. If $http11 is
TRUE (default), will return
HTTP/1.1 standard messages - otherwise
HTTP/1.0 messages will be returned. If
$code is not specified, this method will return all known
HTTP response codes as an associative (code => message)
array.

Apart from parser methods, the class also includes a set of decoders for common
HTTP response transfer encodings: