ホームページ >バックエンド開発 >PHPチュートリアル >file_get_contents() のタイムアウトを増やすことはできますか?

file_get_contents() のタイムアウトを増やすことはできますか?

DDD
DDDオリジナル
2024-11-17 09:31:04583ブラウズ

Can I Increase the Timeout in file_get_contents()?

file_get_contents() のタイムアウト

このクエリは、file_get_contents() を使用して、ファイル内の一連のリンクからデータをフェッチするときのタイムアウトに関する懸念に対処します。ループでは、各リンクの接続に 15 分より大幅に時間がかかる可能性があります。 process.

file_get_contents() にはタイムアウト設定がありますか?

はい、file_get_contents() には、default_socket_timeout PHP 設定オプションで指定されたデフォルトのタイムアウトがあります。このオプションのデフォルト値は 60 秒 (1 分) です。

タイムアウト期間を調整するには?

次のいずれかの方法を使用してタイムアウト期間を変更できます。 :

  • を使用するini_set:
ini_set('default_socket_timeout', 900); // 900 seconds (15 minutes)
  • stream_context_create の使用:
$ctx = stream_context_create([
    'http' => [
        'timeout' => 1200, // 1200 seconds (20 minutes)
    ]
]);

echo file_get_contents('http://example.com/', false, $ctx);

注:これらのタイムアウト設定は接続と接続に適用されることに注意することが重要です。リモートサーバーのファイル処理時間ではなく、通信プロセス。

以上がfile_get_contents() のタイムアウトを増やすことはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。