致命错误:超过30秒的最大执行时间

我正在从一个在线源下载一个JSON文件,当它通过循环运行时,我得到这个错误:

致命错误:在第24行的C:\ wamp \ www \ temp \ fetch.php中超过了30秒的最大执行时间

你的循环可能是无止境的。 如果不是,那么可以像这样延长最大执行时间:

ini_set('max_execution_time', 300); //300 seconds = 5 minutes 

我有同样的问题,并通过更改php.ini参数max_execution_time的值来解决它,如下所示:

 max_execution_time = 360 ; Maximum execution time of each script, in seconds (I CHANGED THIS VALUE) max_input_time = 120 ; Maximum amount of time each script may spend parsing request data ;max_input_nesting_level = 64 ; Maximum input variable nesting level memory_limit = 128M ; Maximum amount of memory a script may consume (128MB by default) 

我希望这可以帮助你。

以上所有的答案都是正确的,但是在某些情况下,我使用一种简单的方法来避免它。

只要把这个命令放在脚本的开头就可以了:

 set_time_limit(0); 

您的脚本超时。 看看set_time_limit()函数来提高执行时间。 或configuration脚本,使其运行速度更快:)

我升级到WordPress 4.0时遇到了这个问题。 默认情况下,WordPress将最大执行时间限制为30秒。

将以下代码添加到您的WordPress安装的根目录下的.htaccess文件,以覆盖默认设置。

 php_value max_execution_time 300 //where 300 = 300 seconds = 5 minutes 

编辑php.ini

find这一行:

 max_execution_time 

将其值更改为300:

 max_execution_time = 300 

300意味着5分钟的http请求执行时间。

如果以上所有内容都不适用于您,请将.htaccess文件添加到您的脚本所在的目录中,并将其放在里面

 <IfModule mod_php5.c> php_value post_max_size 200M php_value upload_max_filesize 200M php_value memory_limit 300M php_value max_execution_time 259200 php_value max_input_time 259200 php_value session.gc_maxlifetime 1200 </IfModule> 

这是我解决我的问题,既ini_set('max_execution_time', 86400); 也没有set_time_limit(86400)解决了我的问题,但.htaccess方法。

我们可以用三种不同的方法来解决这个问题。

1)使用php.ini文件

2)使用.htaccess文件

3)使用Wp-config.php文件(用于Wordpress)

欲了解更多详情 – > steptoinstall

按照path/etc/php5(your php version)/apache2/php.ini

打开它并将max_execution_time的值设置为所需的值。

也许检查你在php.ini文件下改变的任何东西。 例如我改变了“; intl.default_locale =”“; intl.default_locale = en_utf8”为了启用“国际化扩展(国际)”而不增加“扩展= p​​hp_intl.dll”,那么这个相同的错误发生。 所以我build议检查类似的错误。

你用白纸轻轻一捏就可以了。 正确得到whm —–>服务configuration———-> phpconfiguration编辑器——- max_execution_time —–> 30(它是默认更改为任何值你想)

您可以通过在脚本顶部添加以下行来将其限制为零:

 <?php ini_set('max_execution_time', 0); ?> 

通过在PHP脚本顶部添加以下行来增加脚本执行时间。

 ini_set('max_execution_time', 120); //120 seconds = 2 minutes 

参考来自增加PHP脚本执行时间

要扩展max_execution_time ,可以使用ini_setset_time_limit

 // Set maximum execution time to 10 seconds this way ini_set('max_execution_time', 10); // or this way set_time_limit(10); 

但是请注意,这两个函数都会重新启动计算脚本已经执行的时间

 sleep(2); ini_set('max_execution_time', 5); register_shutdown_function(function(){ var_dump(microtime(true) - $_SERVER['REQUEST_TIME_FLOAT']); }); for(;;); // // var_dump outputs float(7.1981489658356) // 

所以如果你想设置脚本可以运行的最大时间,你的命令必须是第一个。

这两个function之间的区别是

  • set_time_limit不返回信息是否成功,但是会在错误时发出警告。
  • ini_set在成功时返回旧值,如果没有任何警告/错误,则在失败时返回false

我在WordPress网站有同样的问题,我join了.htaccess文件,然后为我工作得很好。

 php_value max_execution_time 6000000