この記事では、PHP での file_get_contents の高度な使用法について説明し、参考のために共有します。具体的な分析は次のとおりです:
まずfile_get_contentsのタイムアウト問題を解決し、タイムアウトがエラーを返した後、jsのsettimeoutと同じように試みて、エラーが3回、5回を超えるとサーバーに接続できないことが確認され、完全に諦めます。
ここに 2 つの簡単な解決策があります:
1. タイムアウトの制限時間を増やします
注: set_time_limit は PHP プログラムのタイムアウトのみを設定し、URL を読み取る file_get_contents 関数のタイムアウトを設定しません。
当初、set_time_limit は file_get_contents にも影響を与えるのではないかと考えましたが、テストした結果、無効でした。 file_get_contents の遅延を実際に変更するには、リソース $context のタイムアウト パラメーターを使用できます:
PHP プログラム コードは次のとおりです:
2. 何度も試してください
PHP プログラム コードは次のとおりです:
上記の方法はタイムアウトに対処するのに問題ありません。次に、次のように file_get_contents を使用して Post を実装する方法を示します。
PHPプログラムコード
この記事が皆さんの PHP プログラミングの学習に役立つことを願っています。
file_get_contents() 関数は、ファイルの内容を文字列に読み取る場合に推奨される方法です。
echo file_get_contents( 'www. baidu.com');
?>
OS の操作は入出力フローによって制御されることがわかっています。
デバイス、キーボード、画面、ネットワーク ファイル、シリアル ポートなどの特殊なファイル (Unix ではすべてがファイルです) を開くとき、
は一部の操作を実行するために入力ストリームを必要とします。このとき、stream_context_createを利用して「入力コンテンツ」を作成します。
実際の主な目的は、ほとんどの例が HTTP 操作の実行にも使用されていることがわかります (実際の使用はこの関数に限定されるわけではありません)。
HTTP ヘッダーのコンテンツを入力ストリームのコンテンツとして使用します。この方法でファイルを開くと、サービスによって返されたコンテンツが得られます。
原則として、システムファイルの入力ストリームと出力ストリームで動作します。
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"受け入れ言語: en\r\n" .
"Cookie: foo=bar\r\n"
)
);
$context = stream_context_create($opts);
//言語エンコーディングと Cookie を送信して URL の応答コンテンツを取得します
$file = file_get_contents( ' www.example.com/', false, $context);
?>
悲劇にならないといいのですが、長く話しても理解できませんでした