0

我有一个 php 脚本,它可以做很多事情,产生大量输出,并且可能需要几分钟才能完成。

我已经在开头放置了一个 set_time_limit(999999) 。

在此之前,明显超过了三十秒的时间限制,被打断了。发生这种情况时,记录了一个致命错误,表明这一点。

现在,从我调用该脚本的浏览器中,我观察到浏览器几乎实时接收脚本的输出,但在随机点,脚本只是被中断。它没有超过时间限制(显然),并且没有记录任何错误。实际上,如果我再次尝试它,它会在不同的点被打断。

问题是,如果没有遇到错误,并且没有达到时间限制,还有什么可以导致脚本被中断?也许由于超时而与客户端(浏览器)断开连接?(不过,等待数据不是超时,因为数据一直在输出)。也许浏览器可能有一个 html 页面的最大尺寸?

但是,如果是这两种情况之一,为什么没有将其记录为错误?

4

1 回答 1

0

当脚本达到时间限制时,会抛出一个致命错误,所以如果你没有看到任何错误,这不应该是原因(确保错误报告被激活,要么在脚本中设置它,要么在 php.ini 中设置它。 ini 文件)。

如果您想停用时间限制,请改用:

set_time_limit(0);

不幸的是,如果没有更多信息,我们将无济于事。

于 2012-08-11T01:19:07.657 回答