我从一个在线源下载一个JSON文件,当它通过循环运行时,我得到这个错误:
致命错误:C:\wamp\www\temp\fetch.php第24行超过最大执行时间30秒
我从一个在线源下载一个JSON文件,当它通过循环运行时,我得到这个错误:
致命错误:C:\wamp\www\temp\fetch.php第24行超过最大执行时间30秒
当前回答
编辑php . ini
找到这条线:
max_execution_time
将其值改为300:
max_execution_time = 300
300表示HTTP请求的执行时间为5分钟。
其他回答
使用WHM可以很容易地做到这一点。刚到:
WHM -> Service Configuration -> PHP配置 编辑- > max_execution_time = 30
(30是默认值,更改为任何你想要的值)
如果以上所有方法都不起作用,那么在脚本所在的目录中添加一个.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方法解决了这个问题。
要扩展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,没有任何警告/错误
您的脚本超时了。看一下set_time_limit()函数来延长执行时间。或者分析脚本,使其运行得更快:)
也许可以检查php.ini文件下更改的任何内容。 例如,我将“;Intl .default_locale =”更改为“;Intl .default_locale = en_utf8”,以便启用“国际化扩展(Intl)”而不添加“extension=php_intl.dll”,然后出现相同的错误。所以我建议检查类似的错误。