首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 設定腳本與函數執行超時時間

     編輯:PHP 相關知識

PHP 設定腳本與函數執行超時時間

預設最大執行時間 30 秒,長時間任務需調整超時設定。

方法一:修改 php.ini

max_execution_time = 300 ; 300秒,0 為無限制

修改後需重啟 PHP,影響所有腳本。

方法二:腳本內動態設定

set_time_limit(300); // 300秒
set_time_limit(0);   // 無限制

僅影響當前腳本,建議放在耗時操作前。

方法三:函數層級超時控制(進階)

declare(ticks = 1);
function a() { sleep(10); echo "a finish\n"; }
function sig() { throw new Exception; }

try {
    pcntl_alarm(1); // 1秒後發送 SIGALRM
    pcntl_signal(SIGALRM, "sig");
    a();
    pcntl_alarm(0);
} catch (Exception $e) {
    echo "timeout\n";
}

利用 pcntl_alarm 与信號處理實現單一函數超時中斷,需支援 PCNTL 擴充(非 Windows)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved