如何在 PHP 中增加 max_execution_time

PHP中的max_execution_time指令

这里的max_execution_time指令,是指设置 PHP 脚本在终止之前允许运行的最长时间。一般情况下,默认为 30 秒,我们可以根据需要将其增加到合理的值。

通常,如果脚本执行时间过长,PHP 会提示最大执行时间错误:

Fatal error: Maximum execution time of 30 seconds exceeded

如何增加max_execution_time

有几种不同的方法可以增加 PHP 脚本执行时间。

ini_set函数

这里的ini_set函数,用于更改php.ini配置文件中可用的值。这是增加 max_execution_time 值的最简单方法之一。

要增加脚本执行时间,可以在 PHP 脚本顶部使用以下代码。

ini_set('max_execution_time', '300');

在上面的示例中,我们将max_execution_time指令设置为 300 秒。

另一方面,如果将其设置为 0,将允许脚本无限运行。这样设置时必须非常慎重,并且不建议在实际项目环境中使用。

php.ini 配置文件

如果想全局增加max_execution_time的值,可以选择这种方法。但是,需要获得更改php.ini文件的权限才可以。

找到php.ini文件后,使用文本编辑器打开并查找以下行:

; Maximum execution time of each script, in seconds; https://php.net/max-execution-time; Note: This directive is hardcoded to 0 for the CLI SAPImax_execution_time = 30

然后,根据需要更改该值,保存并重启 Web 服务器。

set_time_limit函数

除了ini_set这个函数之外,还有 set_time_limit 函数可以设置脚本的最长执行时间。

set_time_limit(300);

在这里,set_time_limit函数可以设置秒数。如果将其设置为 0,则允许脚本无限时间运行。

这里的set_time_limit函数的工作方式,与max_execution_time函数略有不同。调用该set_time_limit函数时,它将超时计数器重置为零,然后开始计量执行时间。

假设一个脚本执行了 10 秒,然后set_time_limit函数将脚本执行时间设置为 30 秒。在这种情况下,脚本在终止之前将运行总共 40 秒。所以如果想使用set_time_limit函数,来设置一个PHP脚本的最大执行时间,应该把其放在PHP脚本的顶部。

Apache 用户可以更改.htaccess文件

如果使用 Apache 服务器,可以通过.htaccess配置文件,来设置php.ini配置指令。

首先,在项目中找到.htaccess文件。在大多数情况下,可以在项目的文档根目录中找到它。如果在项目根目录中找不到它,可以查看一下它有没有被隐藏。

然后,使用文本编辑器打开.htaccess文件,并在末尾添加以下行。

php_value max_execution_time 300

这样,就大功告成了。

作者:牛奇网,本站文章均为辛苦原创,在此严正声明,本站内容严禁采集转载,面斥不雅请好自为之,本文网址:https://www.niuqi360.com/php/how-to-increase-max-execution-time-in-php/

(0)
牛奇网牛奇网
上一篇 2022年6月21日 上午9:01
下一篇 2022年6月22日 上午9:52

相关推荐

发表回复

登录后才能评论