HTTP_RequestでHTTPリクエスト[Pear::HTTP_Request]
Pear にHTTP_Requestと呼ばれるHTTPリクエストを行うパッケージがあります。 Snoopyという同じようなクラスもありますが、ここでは HTTP_Request1.2.4 でHTTPリクエストを行います。
次の例では、レスポンスコードとヘッダー、本体を取得します。
<?php
require_once "HTTP/Request.php";
$objHttp = new HTTP_Request("http://www.yahoo.co.jp/");
if (!PEAR::isError($objHttp->sendRequest())) {
$code = $objHttp->getResponseCode();
$header = $objHttp->getResponseHeader();
$body = $objHttp->getResponseBody();
}
?>
sendRequest関数でHTTP Requestをして、HTTP Responseを得ます。
HTTP_Requestクラスをインスタンス化し、getResponseCode関数でレスポンスコードの取得できます。 レスポンスコードには、200や404といったコードが返ってきます。
getResponseHeaderは、レスポンスヘッダーを連想配列で受け取ることができます。例えば、 content-typeがキーでtext/htmlが値といったように取得できます。
また、getResponseHeaderは、getResponseHeader(‘content-type’)と指定して値を取得することもできます。
getResponseBodyは、本体を文字列として取得できます。