を実行し、http://www.google.comは、次のコードを使用して言います。なし希望を持って私は、URLの応答を取得したいHTTPリクエスト
@file_get_contents("http://www.google.com/");
: 私もこれを試してみました。 誰かがそれを手伝ってもらえますか?
を実行し、http://www.google.comは、次のコードを使用して言います。なし希望を持って私は、URLの応答を取得したいHTTPリクエスト
@file_get_contents("http://www.google.com/");
: 私もこれを試してみました。 誰かがそれを手伝ってもらえますか?
HTTPリクエストに対してfile_get_contents()
を使用できますが、適切なストリームコンテキストを正しく設定する必要があります。 (マニュアルPHP hereから取られた)このコードで
ルック:多くの人が提案のように
// Create a stream
$opts = array(
'http'=>array(
'method'=>"GET"
)
);
$context = stream_context_create($opts);
// Open the file using the HTTP headers set above
$file = file_get_contents('http://www.google.com/', false, $context);
これは、PHPでHTTPリクエストを実行するためのより良い方法はcURL拡張モジュールを使用して確実にある場合でも、動作するはずですこのスレッドでは
ハァッ、ストリームのコンテキストのことを知りませんでした。次回は、User-Agentを設定する必要がありますし、cURLしたくありません。 –
標準ファイル機能を使用してURLを開くと、設定フラグallow_url_fopen
が設定されている場合にのみ動作します。これはシステムレベルの設定なので、おそらくphp.iniを編集して有効にする必要があります。
あなたは、それはまた、HTTP接続を行うことからPHPをブロックしているあなたのソフトウェアファイアウォールかもしれカールhttp://www.php.net/manual/en/curl.examples-basic.php
を使用することがはるかに良いです。この
function get_html($url){
/**
* Initialize the cURL session
*/
$ch = curl_init();
/**
* Set the URL of the page or file to download.
*/
curl_setopt($ch, CURLOPT_URL,$url);
/**
* Ask cURL to return the contents in a variable
* instead of simply echoing them to the browser.
*/
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
/**
* Execute the cURL session
*/
$contents = curl_exec ($ch);
/**
* Close cURL session
*/
curl_close ($ch);
return $contents;
}
ようなHTMLを取得するためのcURLを使用することができます。
PHPモジュールから独立した小さなHTTPクライアントライブラリを作成しました。 videodb.netのPHPパッケージにバンドルされ、キャッシュメカニズム、HTTP 1.0/1.1、プロキシサポートなどが含まれています。もし興味があるなら、core/httpclient.phpを確認してください。
あなたの 'allow_url_fopen' ini設定とは何ですか? –
私はエラー抑制を無効にして(それらの関数の前に '@'を削除して)、あなたのphp.iniファイルで 'allow_url_fopen'が有効になっていることを確認します。いったんこれを実行すると、生成されたエラーが何であるかをお知らせください。 –
GoogleルールでCURLなどの検索結果のダウンロードが禁止されていることを覚えておいてください。 – PiKey