HTTP_RequestでProxy Serverを指定する[Pear::HTTP_Request]

メモ:  Category:pear

PearHTTP_RequestProxy Server を指定するには、コンストラクタの第二引数に連想配列で指定するか setProxy 関数で指定します。

インスタンス化時に指定するには、次の値をキーとして各設定を指定します。

  • proxy_host (string)
  • proxy_port (integer)
  • proxy_user (string)
  • proxy_pass (string)
<?php
require_once "HTTP/Request.php";

$proxy = ('proxy_host'=>'xxx.xxx.xxx.xxx','proxy_port'=>8080);

$objHttp = new HTTP_Request("http://www.yahoo.co.jp/",$proxy);
if (!PEAR::isError($objHttp->sendRequest())) {
    $code = $objHttp->getResponseCode();
    $header = $objHttp->getResponseHeader();
    $body = $objHttp->getResponseBody();
}
?>

Proxy Serverを切り替えたいといった時には、setProxy関数を指定します。

setProxy関数は、 host、port、user、password を渡します。デフォルトで port は 8080、 user と password は NULL になります。

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

$objHttp = new HTTP_Request("http://www.yahoo.co.jp/");

$objHttp->setProxy('xxx.xxx.xxx.xxx',8080);

if (!PEAR::isError($objHttp->sendRequest())) {
    $code = $objHttp->getResponseCode();
    $header = $objHttp->getResponseHeader();
    $body = $objHttp->getResponseBody();
}
?>

bluenote by BBB