8.2. Zend_Http_Response

8.2.1. 導入

Zend_Http_Response は、項8.1. 「Zend_Http_Client」 が返すレスポンスに簡単にアクセスできるようにします。 リクエストの結果として受け取った内容を操作するための直感的なメソッド群を提供します。

  • isError(): HTTP のエラーコードを受け取った場合に TRUE、 それ以外の場合に FALSE を返します。
  • isSuccessful(): HTTP の成功コードを受け取った場合に TRUE、 それ以外の場合に FALSE を返します。
  • isRedirect(): HTTP のリダイレクトコードを受け取った場合に TRUE、 それ以外の場合に FALSE を返します。
  • getStatus(): HTTP ステータスコードを返します。
  • getHeaders(): HTTP レスポンスヘッダを文字列の配列で返します。
  • getBody(): HTTP レスポンスの本文を文字列で返します。

例 8.6. HTTP レスポンスデータの使用例

<?php
require_once 'Zend/Http/Client.php';
try {
    $http = new Zend_Http_Client('http://example.org');
    $response = $http->get();
    if ($response->isSuccessful()) {
        echo $response->getBody();
    } else {
        echo "<p>エラーが発生しました</p>\n";
        echo "HTTP Status: " . $response->getStatus() . "\n";
        echo "HTTP Headers:\n";
        $responseHeaders = $response->getHeaders();
        foreach ($responseHeaders as $responseHeaderName => $responseHeaderValue) {
            echo "$responseHeaderName: $responseHeaderValue\n";
        }
    }
} catch (Zend_Http_Client_Exception $e) {
    echo '<p>エラーが発生しました (' .$e->getMessage(). ')</p>';
}
?>