溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php中怎么設(shè)置超時(shí)限制

發(fā)布時(shí)間:2021-07-23 14:24:59 來源:億速云 閱讀:353 作者:Leah 欄目:開發(fā)技術(shù)

php中怎么設(shè)置超時(shí)限制,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

對于函數(shù)我們可以常用下面方法,直接給函數(shù)設(shè)置超時(shí)時(shí)間來操作,

declare(ticks = 1); 

    function a(){
    sleep(10);
    echo "a finishi ";
}
function b(){
    echo "Stop ";
}
function c(){
    usleep(100000);
}
 
function sig(){
    throw new Exception;
}
 
try{
    pcntl_alarm(1);
    pcntl_signal(SIGALRM, "sig");
    a();
    pcntl_alarm(0);
}catch(Exception $e){
    echo "timeout ";
}
b();
a();
b();


對于文件或程序代碼可使用set_time_limit只是設(shè)置你的PHP程序的超時(shí)時(shí)間.
解決方法:

1.修改php.ini文件,代碼如下:

復(fù)制代碼 代碼如下:

max_execution_time = 30; // Maximum execution time of each script, in seconds 原值30秒,你可以改大點(diǎn).

改完后記得重啟php,該方法改了后對所有程序生效.

2.修改你的程序,在你需要耗時(shí)超過默認(rèn)值(30秒)的腳本中,加入代碼:

復(fù)制代碼 代碼如下:

set_time_limit(300); // 最大執(zhí)行時(shí)間這里設(shè)置300秒

設(shè)置成0表示不限時(shí)。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI