咨询热线:4006-75-4006

售前:9:00-23:30    备案:9:00-18:00    技术:7*24h

php程序运行时报错:Fatal error Maximum execution time of 30 seconds exceeded

2023-11-23 10:51:53 1965次

php程序运行时报错:Fatal error Maximum execution time of 30 seconds exceeded


PHP程序代码执行很长时间然后出现以下错误提示:
Fatal error: Maximum execution time of 30 seconds exceeded in ......

这意味着PHP执行时间超过了30秒的限制。

处理此错误的解决办法

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; //无限制

修改后重启php

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); 
}


首页
最新活动
个人中心