このセクションでは、fsockopen、curl、file_get_contents という名前で、具体的には、ネットワーク データの入出力のためのこれら 3 つの方法の概要について説明します。 fsockopen についてはこれまでにたくさん話しましたが、他の話に移りましょう。ここでは、ネットワーク データをクロールする一般的な方法の簡単なリストを示します。
1. file_get_contents を使用して get モードでコンテンツを取得します。
?
1 2 3
|
$url = 'http://localhost/test2.php'; $html = file_get_contents($url); エコー $html;
|
?
1 2 3 4 5 6 7 8 9 10
|
$url = 'http://localhost/test2.php'; $fp = fopen($url, 'r'); stream_get_meta_data($fp); $結果 = ''; ながら(!feof($fp)) { $result .= fgets($fp, 1024); } echo "URL 本文: $result"; fclose($fp);
|
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
$data = 配列( 'foo'=>'バー', 「バズ」=>「ブーム」、 'サイト'=>'www.jb51.net', '名前'=>'今は魔法');
$data = http_build_query($data);
//$postdata = http_build_query($data); $オプション = 配列( 'http' => 配列( 'メソッド' => 'POST', 'header' => 'Content-type:application/x-www-form-urlencoded', 'コンテンツ' => $data //'timeout' => 60 * 60 // タイムアウト時間 (単位: 秒) ) );
$url = "http://localhost/test2.php"; $context = stream_context_create($options); $result = file_get_contents($url, false, $context);
echo $result;
|
?
1 2 3 4 5 6 7 8 9
|
$url = 'http://localhost/test2.php?site=jb51.net'; $ch =curl_init(); $タイムアウト = 5; curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents =curl_exec($ch); curl_close($ch); $file_contentsをエコー;
|