導入 – HTTP_Request 導入

このパッケージを使用することで、PHP スクリプトから HTTP リクエストを簡単に処理することができます。 これは、GET/POST/HEAD/TRACE/PUT/DELETE、Basic 認証、プロキシ、 プロキシ認証、SSL、ファイルアップロードなどをサポートしています。

前述の特長のため、HTTP_Request は PHP アプリケーションで広く知られた Mozilla ブラウザのような Web ブラウザのほとんどの機能を模倣することを可能にします。 可能なアプリケーション範囲は、次の通りです:

  • getResponseCode の助けによる WWW リンクの有効性をチェックすること

  • リモートの Web ページを取り込み、結果をパースすること

  • その他

yahoo.com の内容を取得し、 それを表示する


<?php
require_once "HTTP/Request.php";

$req =& new HTTP_Request("http://www.yahoo.com/");
if (!
PEAR::isError($req->sendRequest())) {
    echo 
$req->getResponseBody();
}
?>

二つの Web サイトの内容を取得し、一行で表示する

この例では、二つの Web サイトの内容が取得され、表示されます。 前者は POST パラメータが処理されます。POST データスタックは、 二番目の Web サイトの内容が取得される前にクリアされます。


<?php
require_once "HTTP/Request.php";

$req =& new HTTP_Request("http://www.php.net");
$req->setMethod(HTTP_REQUEST_METHOD_POST);
$req->addPostData("Foo""bar");
if (!
PEAR::isError($req->sendRequest())) {
     
$response1 $req->getResponseBody();
} else {
     
$response1 "";
}

$req->setMethod(HTTP_REQUEST_METHOD_GET);
$req->setURL("http://pear.php.net");
$req->clearPostData();
if (!
PEAR::isError($req->sendRequest())) {
     
$response2 $req->getResponseBody();
} else {
     
$response2 "";
}

echo 
$response1;
echo 
$response2;
?>