解決php提示Maximum execution time of 30 seconds exceeded錯誤


如何解決錯誤?

基本上,有3種方法可以處理此錯誤:

  1. 修改php配置文件php.ini文件
  2. 使用 ini_set() 函數
  3. 使用set_time_limit()函數

1)修改php配置文件php.ini文件

找到php.ini文件並在此文件中找到它:

max_execution_time = 30 ;

在此行中,將數字30設置為所需的值(以秒為單位)。

也可直接修改為:

max_execution_time = 0; //無限制

請注意,修改后需要重新啟動Linux服務器。

2)使用 ini_set() 函數

對於那些無法修改php.ini的新媒體人,可以使用ini_set()函數,來更改最大執行時間限制。

在程序頂部添加以下代碼:

ini_set('max_execution_time','100');
  • 以上設置為100秒,你也可以將其設置為0,表示不限於執行時間。

3)使用set_time_limit() 函數

在程序的頂部添加:

set_time_limit(100);
  • 這表示最長執行時間設置為100秒。
  • 當然,參數也可以設置為0,意味着無限∞。

set_time_limit 函數說明:

void set_time_limit ( int $seconds )

此函數的功能是設置允許腳本運行的時間(以秒為單位)。

  • 如果超出此設置,腳本將返回致命錯誤。
  • 默認值為30秒,如果此值存在,則它是php.ini中max_execution_time中定義的值。
  • 調用此函數時,set_time_limit()將從零重新啟動超時計數器。

換言之,如果超時默認為30秒,並且當腳本運行25秒時,調用set_time_limit(20),則腳本可以在超時之前運行總共45秒。

當php以安全模式運行時,此功能不起作用。

可以關閉安全模式:

  • php.ini中將safe_mode設置為off。
  • 或更改php.ini中的時間限制。
  • set_time_limit 實例

    如果未打開安全模式,安裝程序將運行25秒。

    例如:

    <?php
    if(!ini_get('safe_mode')){
    set_time_limit(25);
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM