SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

【php】file_get_contents()関数で器用にGETリクエストを送る

ソース

<?php
$opts = array(
		'http'=>array(
				'method' => 'GET',
				'header' => "Accept-language: en\r\n"
							. "Referer: http://php.net/file_get_contents\r\n"
							. "Cookie: LAST_LANG=ja\r\n"
			)
	);
$context = stream_context_create($opts);
$response = file_get_contents('http://www.php.net/stream_context_create', false, $context);

解説

file_get_contents()でhttpのリクエストを送信する際に、第3引数を使うと、クッキーなど各種ヘッダとともにリクエストを送信することができる。

CookieにセッションIDを含めてリクエストを送信すれば、ログインしていないと取得できないコンテンツも取得できる。

php.netで遊ばせていただくと、「Cookie: LAST_LANG=ja」を「Cookie: LAST_LANG=en」に変えると英語のコンテンツを取得できる。ちゃんとクッキーが送信されて、php.netはそのクッキーを見てくれている。

関連するメモ

コメント(1)

【php】file_get_contents()関数でPOSTリクエストを送る at softelメモ 2010年8月3日 02:07

[…] GETでHTTPリクエストを送る場合とさほど変わりはないです。 […]