我的脚本中有一些关于使用ffmpeg转换视频的任务。我使用codeigniter 2.0.3执行此操作并在库中找到脚本并使用shell_exec()运行ffmpeg。
我的php脚本中有3个任务。
当我上传文件时,我的php脚本开始转换我上传的视频。但转换结束时间超过5分钟。它不会继续产生拇指。它的说法
PHP致命错误:第102行的C:\ AppServ \ www \ mis \ application \ libraries \ my_video_utility.php超出了300秒的最大执行时间,引用者:http://localhost/mis/test/
我已经在php.ini中将我的max_execution时间,max_input_time等设置为3600,并在我的php脚本中添加了set_time_limit()和set_ini()。但是,它仍然会出错。
但是,当我上传短视频时,已完成。
答案 0 :(得分:19)
确定。我自己这样做。我联系了我的老师。 CodeIgniter有一些东西不包含在他们的文档中。
在system / core / CodeIgniter.php的第103行
if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0)
{
@set_time_limit(300);
}
我尝试更改该值并且有效。
答案 1 :(得分:2)
在CodeIgniter.php中更改set_time_limit()
函数的解决方案是有效的,但我认为更改框架的核心文件并不是一个好主意。
我找到了另一个决定,你可以在你需要的地方拨打set_time_limit()
,它将在CodeIgniter.php中重叠设置时间限制。
答案 2 :(得分:0)
Codeigniter 2的set_time_limit函数运行300.升级到Codeigniter 3后,有一件事开始失败。在查看这篇文章之后,我意识到set_time_limit调用已在3中删除,因此您可能必须在您的特定问题代码的已接受答案中添加代码。我不建议将其添加回Codeigniter.php