首頁 > 後端開發 > php教程 > 使用 file_get_contents() 時如何管理逾時問題?

使用 file_get_contents() 時如何管理逾時問題?

Barbara Streisand
發布: 2024-11-13 14:19:02
原創
768 人瀏覽過

How can I manage timeout issues when using file_get_contents()?

file_get_contents() 的逾時注意事項

使用 file_get_contents() 從遠端連結取得資料時,考慮其逾時影響至關重要。預設情況下,file_get_contents() 繼承了 PHP ini 設定 default_socket_timeout 的逾時時間,預設為 60 秒。如果檢索操作超過此限制,請求將提前逾時。

覆蓋預設超時

要修改預設超時設置,有兩種主要方法:

  1. Ini 設定修改:使用ini_set() 調整default_socket_timeout 值。例如:

    ini_set('default_socket_timeout', 900); // 900 Seconds = 15 Minutes
    登入後複製
  2. 流上下文配置:使用stream_context_create()定義自訂流上下文,並將所需的逾時指定為HTTP上下文選項。以下是一個範例:

    $ctx = stream_context_create(array('http' => array('timeout' => 1200))); //1200 Seconds is 20 Minutes
    echo file_get_contents('http://example.com/', false, $ctx);
    登入後複製

注意: 請記住,超時持續時間適用於整個檔案檢索過程,包括網路延遲和伺服器處理時間。因此,有必要設定一個適當的超時值來考慮潛在的延遲。

以上是使用 file_get_contents() 時如何管理逾時問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板