PHPでのHTTPアクセスを超簡単に行える「PEAR::HTTP_Request」
2007年03月28日-
スポンサード リンク
PHPでのHTTPアクセスを超簡単に行える「PEAR::HTTP_Request」。
HTTP_Request は、PHPユーザの方ならご存知の方も多いと思いますが、WEB上にコピペですぐ使えるサンプルが無かったので作ってみました。
単純にHTTPリクエストを行うなら、PHPなら、file 関数や file_get_contents で1行でできてしまいます。
(php.ini にて allow_url_fopen=Onにした場合のみ)
ただ、タイムアウトの秒数を設定したり、リダイレクトされた場合の処理や、HTTPリクエストする際のヘッダーなどの指定はカスタマイズ出来ません。
HTTP_Request ならそれが次のように簡単に行えます。
<?php
// リクエストを行うURLの指定
$url = "http://〜";
$option = array(
"timeout" => "10", // タイムアウトの秒数指定
"allowRedirects" => true, // リダイレクトの許可設定(true/false)
"maxRedirects" => 3, // リダイレクトの最大回数
);
// HTTP_Requestの初期化
$http = new HTTP_Request($url, $option);
// HTTPのヘッダー設定
$http->addHeader("User-Agent", "My PEAR PROGRAM");
$http->addHeader("Referer", "http://www.yahoo.co.jp/");
// HTTPリクエスト実行
$response = $http->sendRequest();
if (!PEAR::isError($response)) {
$ret1 = $http->getResponseCode();// ResponseCode(200等)を取得
$ret2 = $http->getResponseHeader();// ResponseHeader(レスポンスヘッダ)を取得
$ret3 = $http->getResponseBody();// ResponseBody(レスポンステキスト)を取得
$ret4 = $http->getResponseCookies();// クッキーを取得
}
?>
PHPでリモートファイルを取得する場面は多く(RSSを取ったり)、HTTPのパラメータも設定した上できちんとアクセスさせたい場合もありますね。
このサンプルを覚えておけばコピペしてかなり活用できると思います。
HTTP_Client というクラスも存在しますが、こちらは拙著の「PHPによるWebアプリケーションスーパーサンプル 活用編」にて紹介しています。
関連ページ
スポンサード リンク
Advertisements
SITE PROFILE
最新のブログ記事(新着順)
- CSSで太陽が差し込むようなアニメーション実装
- 可愛くアニメーションする「beautifully crafted animated icons」
- アイソメトリックなアイコンがアイコンがPNG,SVGでゲットできる「Isoicons」
- ユニークなカタカナフォントtorisippo
- 美しいメッシュグラデーションをCSSで簡単に取得できる「MSHR」
- TailwindCSSなサイトで使える100以上のアニメーションエフェクト「animata」
- SVG形式のテック系企業のロゴを簡単にゲットできる「Svgl」
- 統一感のある色味を一括生成できるツール「The good colors」
- くちばしフォント【商用可】
- 小説表紙などに使えそうな商用可なフォント「になロマン」
- 過去のエントリ