PHP 在最大执行时间上出错


PHP Error on Maximum Execution Time

我有一个PHP脚本运行一个循环,可以连续运行数小时。但是,大约 50 分钟后,我收到以下错误,尽管脚本远远超过 60 秒:

致命错误:超过 60 秒的最大执行时间 /path/script.php 在第 275 行

脚本失败时的内存使用量为 11359848 字节 - 10.8336 MB。知道什么样的事情实际上会导致剧本像这样绊倒吗?

最大执行时间不是实时时间,而是 CPU 时间。

因此,如果发送例如需要 10 小时才能完成的 HTTP 请求(即您等待 I/O),您可以轻松地保持在 60 秒的限制内。但是,如果尝试使用蛮力破坏哈希(即脚本实际上正在执行某些操作),您将在几乎 60 秒的实时时间后达到时间限制。

您的问题的解决方案非常简单:除非 PHP 在safe_mode中运行,否则set_time_limit(0);禁用时间限制,但如果是这种情况,那么是时候让托管公司有机会了。