Maximum execution time of 30 seconds exceeded 解决办法

PHP代码执行很长时间。

然后出现以下错误提示:
Fatal error: Maximum execution time of 30 seconds exceeded in ......

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

基本上,有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; //无限制

修改后重启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);
}
posted @   八戒vs  阅读(4291)  评论(1编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示