PHPでPOSTを使ってウェブページのソースを取得する

Pocket

PHPでウェブページのソースを丸ごとゲットするには「file_get_contents」を使います。

$url = "http://xxxxx.com/yyyyy.php";
$text = file_get_contents($url);

このようにすればソース全体を一度に文字列として取得できます。

もしURLにパラメータがある場合も同じです。

$url = "http://xxxxx.com/yyyyy.php?p=aaaaa&q=bbbbb";
$text = file_get_contents($url);

パラメータがURLに含まれていない場合、つまり「POST」を使う場合はちょっと工夫が必要です。

<form action="" method="post">
<input type="text" name="p">
<input type="text" name="q">
<input type="submit" value="実行">
</form>

このようにメソッドとして「POST」を使うケースだとURLにパラメータが現れません。
その場合は次のようにします。PHP5で使えます。

$url = "http://xxxxx.com/yyyyy.php";
$data = array(
  "p" => "aaaaa",
  "q" => "bbbbb"
);
$options = array("http" => array(
  "method" => "POST",
  "content" => http_build_query($data),
));
$text = file_get_contents($url, false, stream_context_create($options));

「$data」に連想配列としてパラメータをセットします。

[ 2011年9月23日 | カテゴリー: デジタル | タグ: , ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報