首頁 >後端開發 >PHP問題 >php如何設定超時時間

php如何設定超時時間

coldplay.xixi
coldplay.xixi原創
2020-09-07 09:46:4511393瀏覽

php設定逾時時間的方法:先開啟php.ini設定檔;然後將【max_execution_time=30】修改為【max_execution_time=600】即可。如果沒有伺服器修改權限,也可以利用ini_set()函數來設定逾時時間。

php如何設定超時時間

初始設定腳本執行時間

(推薦教學:php影片教學

打開php.ini文件,找到:

max_execution_time=30

 修改為:

max_execution_time=600

如果你沒有伺服器修改權限,可透過內建PHP腳本的方法設定逾時時間,在需要執行長時間操作的PHP檔案中加入以下程式碼:

<?phpini_set(&#39;max_execution_time&#39;, 600);//秒为单位,自己根据需要定义

也可以透過.htaccess 檔案設定逾時時間,在檔案中加入下列程式碼:

php_value max_execution_time 600

PHP請求遠端位址設定逾時時間的方法:

1、file_get_contents 請求逾時設定

$timeout = array(
&#39;http&#39;=> array(
&#39;timeout&#39;=>5//设置一个超时时间,单位为秒
)
);
$ctx = stream_context_create($timeout);
$text = file_get_contents("https://www.jb51.net/",0, $ctx);

2、fopen 請求逾時設定

$timeout = array(
&#39;http&#39; => array(
&#39;timeout&#39; => 5 //设置一个超时时间,单位为秒
)
);
$ctx = stream_context_create($timeout);
if ($fp = fopen("https://www.jb51.net/", "r", false, $ctx)) {
while( $c = fread($fp, 8192)) {
echo $c;
}
fclose($fp);
}

3、curl請求逾時設定

CURL 是常用的存取HTTP協定介面的lib庫,效能高,還有一些並發支援的功能等。

curl_setopt($ch, opt) 可以設定一些逾時的設置,主要包括:

a 、CURLOPT_TIMEOUT 設定cURL允許執行的最長秒數。

b、CURLOPT_TIMEOUT_MS 設定cURL允許執行的最長毫秒數。

c、 CURLOPT_CONNECTTIMEOUT 在發起連線前等待的時間,如果設定為0,則無限等待。

d、 CURLOPT_CONNECTTIMEOUT_MS 嘗試連線等待的時間,以毫秒為單位。如果設定為0,則無限等待。

e、 CURLOPT_DNS_CACHE_TIMEOUT 設定在記憶體中保存DNS資訊的時間,預設為120秒。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT,60);  //只需要设置一个秒的数量就可以
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_USERAGENT, $defined_vars[&#39;HTTP_USER_AGENT&#39;]);

想了解更多程式設計學習,請關注php培訓欄位!

#

以上是php如何設定超時時間的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn