symfony PHP致命错误:Copyright © 2016 - 2018 www.jsjsj.com All Rights Reserved.粤ICP备16048888号-1

wz8daaqr  于 2023-04-21  发布在  PHP
关注(0)|答案(4)|浏览(245)

当我尝试使用 AJAX 和Laravel上传大于15 MB的视频时,我得到了这个错误:
PHP致命错误:Copyright © 2016 - 2018 www.jsjsj.com All Rights Reserved.粤ICP备16048888号-1
我使用FfmpegSymfony/process
Laravel中的symfony windowsPipes.php错误
什么问题?

6psbrbz9

6psbrbz91#

您可以在php.ini中设置max_execution_time:

max_execution_time=300

或者,在PHP代码中:

ini_set('max_execution_time', 300); // 5 minutes

将其设置为零可以消除该限制,但是在这种情况下Apache也可能超时。
查看手册http://php.net/manual/en/info.configuration.php#ini.max-execution-time
这设置了脚本在被解析器终止之前允许运行的最长时间(秒)。这有助于防止编写得不好的脚本占用服务器。默认设置为30。从命令行运行PHP时,默认设置为0。
最大执行时间不受系统调用、流操作等的影响,详情请参见set_time_limit()函数。
在安全模式下运行时,无法使用ini_set()更改此设置。唯一的解决方法是关闭安全模式或在php.ini中更改时间限制。
您的Web服务器可以有其他超时配置,这些配置也可能会中断PHP的执行。Apache有一个Timeout指令,IIS有一个CGI超时功能。两者的默认值都是300秒。有关具体详细信息,请参阅Web服务器文档。

uemypmqf

uemypmqf2#

问题是上传需要30秒以上,你可以像这样延长最大执行时间,在你的xampp中转到php.ini并设置这个

ini_set('max_execution_time', 300); //300 seconds = 5 minutes
x6h2sr28

x6h2sr283#

在php.ini文件中设置 max_execution_time 可能并不适用于所有场景,无论如何,将其设置为大约 300 秒。但是对于所有场景,在您想要执行的文件中写入ini_set('max_execution_time', 300);将为您完成这项工作。

2uluyalo

2uluyalo4#

您可以使用set_time_limit设置当前脚本的最大执行时间,而无需更改php.ini文件。此更改是临时的,仅适用于当前脚本。

set_time_limit(300); // 5 minutes

这段代码修改了php.ini文件中的max_execution_time指令,影响了使用此配置的所有PHP页面。更改是临时的,仅适用于当前脚本。

ini_set('max_execution_time', 300); // 5 minutes

这两个函数都限制PHP脚本的执行时间,但set_time_limit只影响当前脚本,而ini_set使用配置指令影响所有PHP页面。

相关问题