我从一个在线源下载一个JSON文件,当它通过循环运行时,我得到这个错误:
致命错误:C:\wamp\www\temp\fetch.php第24行超过最大执行时间30秒
我从一个在线源下载一个JSON文件,当它通过循环运行时,我得到这个错误:
致命错误:C:\wamp\www\temp\fetch.php第24行超过最大执行时间30秒
当前回答
我有同样的问题,并通过改变参数max_execution_time在php.ini中的值来解决它,就像这样:
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)
我希望这能帮助到你。
其他回答
我在我的案例中做了一些更改:xampp\phpMyAdmin\libraries\config.default.php
我已经搜索了:$cfg['ExecTimeLimit'],并更改右侧的值…
您可以将右手值更改为任何更高的值,如“5000”。这很有效。
你的循环可能是无止境的。如果不是,你可以像这样延长最大执行时间:
ini_set('max_execution_time', '300'); //300 seconds = 5 minutes
and
set_time_limit(300);
可用于临时延长时间限制。
您的脚本超时了。看一下set_time_limit()函数来延长执行时间。或者分析脚本,使其运行得更快:)
要扩展max_execution_time,可以使用ini_set或set_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)
//
因此,如果您想要设置脚本可以运行的确切的最大时间,您的命令必须是第一个。
这两个功能之间的区别是
Set_time_limit不会返回是否成功的信息,但会在错误时抛出警告。 Ini_set成功时返回旧值,失败时返回false,没有任何警告/错误
进入/etc/php5(你的php版本)/apache2/php.ini路径。
打开它,并将max_execution_time的值设置为所需的值。