我一直收到这个PHP错误:
致命错误:超过最长执行时间300秒
我尝试将php.ini中的max_execution_time
和max_input_time
设置(包括apache和cli)设置为0
,-1
和4000
秒每个
我仍然得到错误说:
致命错误:超过最长执行时间300秒
在我收到此消息之前,我的脚本运行超过300秒
我正在通过命令行运行脚本。
我还检查了我的phpinfo()
,因此请查看我正在使用的php.ini
。
更有趣的是,我尝试将max_execution_time
和max_input_time
设置为5秒,我的脚本将在5秒内运行,然后才能获得:
致命错误:超过最长执行时间300秒
答案 0 :(得分:81)
如果您正在使用WAMP请转到:
增加max_execution_time
中的php.ini
,然后转到
C:\wamp\apps\phpmyadmin3.4.10.1\libraries
(根据您的安装更改路径)
打开config.default.php
并将$cfg['ExecTimeLimit']
的值更改为0:
$cfg['ExecTimeLimit'] = 0;
这将解决PhpMyAdmin导入的问题。
答案 1 :(得分:56)
在脚本的开头,您可以添加。
ini_set('MAX_EXECUTION_TIME', '-1');
答案 2 :(得分:50)
Xampp用户
xampp\phpMyAdmin\
$cfg['ExecTimeLimit'] = 300;
$cfg['ExecTimeLimit'] = 0;
(或更大的值)答案 3 :(得分:23)
我遇到了类似的情况,事实证明Codeigniter(我正在使用的PHP框架)实际上设置了自己的时间限制:
在system / core / Codeigniter.php中,版本2.1.3中的第106行出现以下内容:
if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0)
{
@set_time_limit(300);
}
由于没有其他方法可以避免更改核心文件,因此我将其删除以便允许通过php.ini进行配置,并为CLI请求提供无限的最长执行时间。
我建议在未来CI版本升级的情况下记录此更改。
答案 4 :(得分:9)
在脚本中尝试以下内容:
set_time_limit(1200);
答案 5 :(得分:6)
这是正确答案:
转到
c:\wamp\apps\phpmyadmin3.4.10.1\libraries\config.default.php
查找并设置
$cfg['ExecTimeLimit'] = 0;
重启所有服务 并完成了。
答案 6 :(得分:4)
转到xampp / phpmyadmin / libraries / config.default.php
并进行以下更改
from $cfg['ExecTimeLimit'] = ’300′;
to $cfg['ExecTimeLimit'] = ’0′;
答案 7 :(得分:1)
PHP的CLI默认执行时间是无限的。
设置允许脚本运行的最长时间(以秒为单位) 在它被解析器终止之前。这有助于防止不良 从捆绑服务器编写脚本。默认设置为30。 从命令行运行PHP时,默认设置为0。
http://gr.php.net/manual/en/info.configuration.php#ini.max-execution-time
检查您是否在安全模式下运行PHP,因为它在此时忽略了所有时间的exec设置。
答案 8 :(得分:0)
在我有多个 phpmyadmins 的配置中的 wamp 中,配置文件中的值在 wamp/alias/phpmyadmin.conf
中被覆盖。我在那里设置了两行:
1. php_admin_value max_execution_time 3600
2. php_admin_value max_input_time 3600
...终于成功了!
答案 9 :(得分:0)
如果您使用的是xampp,并使用phpMyadmin导入大型sql文件,并且增加了max_execution时间,最大文件上传限制以及所需的一切,并且上述任何一种解决方法都对您没有帮助
转到您的xampp文件夹,以我为例,这是我需要修改的文件的相对路径:C:\ xampp \ phpMyAdmin \ libraries \ config.default.php
/**
* maximum execution time in seconds (0 for no limit)
*
* @global integer $cfg['ExecTimeLimit']
* by defautlt 300 is the value
* change it to 0 for unlimited
* time is seconds
* Line 709 for me
*/
$cfg['ExecTimeLimit'] = 0;
答案 10 :(得分:0)
对于Xampp用户
1. Go to C:\xampp\phpMyAdmin\libraries
2. Open config.default.php
3. Search for $cfg['ExecTimeLimit'] = 300;
4. Change to the Value 300 to 0 or set a larger value
5. Save the file and restart the server
6. OR Set the ini_set('MAX_EXECUTION_TIME', '-1'); at the beginning of your script you can add.
答案 11 :(得分:0)
对于本地AppServ
转到C:\ AppServ \ www \ phpMyAdmin \ libraries \ config.default.php
查找$cfg['ExecTimeLimit']
并将值设置为0.
所以它看起来像
$cfg['ExecTimeLimit'] = 0;
答案 12 :(得分:0)
MAMP用户 编辑php.ini解决了这个问题 - 有一行:
max_execution_time = 30;每个脚本的最长执行时间,以秒为单位
将此值设置为更高的值。
该文件位于php / php5.6.25 / conf / php.ini中(显然你需要为你正在使用的php版本弄湿文件 - 你可以从MAMP首选项中找到它。
答案 13 :(得分:0)
在Xampp上,在php.ini中你必须检查mysql.connect_timeout。因此,例如,将其更改为:
mysql.connect_timeout = 3600
该时间将始终以秒为单位计算(在我的示例中为1小时)
答案 14 :(得分:0)
在Codeignitor版本3.0.x中,system / core / Codeigniter.php不包含时间限制以及插入
arr[n]
将无效,因为codeignitor将使用自己的函数set_time_limit()覆盖它。 因此,您必须从codeignitor中删除该功能,或者只需插入
即可ini_set('MAX_EXECUTION_TIME', -1);
如果你想将它改为1000秒,那么在php文件的开头是。 如果要根据需要运行时间,请将时间设置为0(零)。
答案 15 :(得分:0)
如果以上答案不起作用,请尝试检查您的代码,根据我的经验,无限循环也会导致该问题。如果声明,请检查您的其他。
答案 16 :(得分:0)
在我的情况下,当我在Phpmyadmin中遇到该错误时,我尝试MySQL-Front并成功导入我的数据库。
注意:您仍然可以使用此问题下提供的解决方案来解决Phpmyadmin中的问题。
答案 17 :(得分:0)
WAMP用户:
1)转到C:\ wamp \ apps \ phpmyadmin
2)打开config.inc
3)添加$ cfg ['ExecTimeLimit'] ='3600';到文件。
4)保存文件并重启服务器。
这个文件会覆盖php.ini,对你有用!
答案 18 :(得分:-1)
您可以设置时间限制:
ini_set('max_execution_time', 1000000000000000);