Fatal error: Maximum execution time of 300 seconds exceeded 是因为程序执行时间超过了最大允许执行时间
解决方法:
1. 修改php.ini文件:
max_execution_time = 30 ; // Maximum execution time of each script, in seconds
原值30秒,你可以改大点。
改完后记得重启php。该方法改了后对所有程序生效。
2. 修改你的程序,在你需要耗时超过默认值(30秒)的脚本中,加入代码:
set_time_limit(300); // 最大执行时间这里设置300秒
设置成0表示不限时。
我试了方法2,搞定。
===========================================================================================
问题:内存超限,具体报错语句忘了,简单说一下解决办法。
利用循环分批导入;
每个循环内部开始处使用sleep(5);语句,做延迟执行,防止服务器内存同一时间占用过多,里面数字据情况修改;
每个循环内部结束地方使用 ob_flush();刷新输出缓冲
flush();将当前为止程序的所有输出发送到用户的浏览器
两者必须同时使用来刷新输出缓冲www.2cto.com
========================================================================
通常可能会是Allowed memory size of 8388608 bytes exhausted报错。
出现该错误的原因是因为所有php页面消耗的最大内存默认是为 8M (在PHP的ini件里可以看到) ,如果文件太大或图片太多在读取的时候会发生上述
错误。
解决办法:
a. 修改 php.ini
将memory_limit由 8M 改成 16M(或更大),重启apache服务
b. 在PHP 文件中 加入 ini_set(”memory_limit”,”100M”)。
注意:为了系统的其它资源的正常使用 请您不要将 memory_limit设置太大,其中-1为不限。
c. 修改.htaccess 文档(前提是该目录支持.htaccess)
在文档中新增一句:php_value memory_limit 16M(或更大)