PHP:超过最大执行时间30秒,继续循环

PHP:超过最大执行时间30秒,继续循环,php,Php,我正在编写一个php脚本,在其中执行循环,循环中有一个特定的函数处理信息,如图所示 while (some condition){ // some code processInformation(); // Some more code } 事实证明,在中途,在processInformation()内部,我遇到了一个致命错误:超过了30秒的最长执行时间。在我的情况下,使用set_time_limit(0)不会有帮助,因为processInformation()可能会花

我正在编写一个php脚本,在其中执行循环,循环中有一个特定的函数处理信息,如图所示

while (some condition){
    // some code
    processInformation();
    // Some more code
}

事实证明,在中途,在processInformation()内部,我遇到了一个致命错误:超过了30秒的最长执行时间。在我的情况下,使用set_time_limit(0)不会有帮助,因为processInformation()可能会花费很长时间。我不希望一个错误完全破坏我的程序,因此,如果processInformation()花费的时间太长,我是否可以捕获异常或告诉php“继续”循环?

我不知道如何捕获异常,但您可以使用简单的时间计算在60秒后逃逸。()

$x=时间()
虽然(某些条件){

processInformation();
如果($x+60)
我不知道如何捕捉异常,但您可以使用简单的时间计算在60秒后逃逸。()

$x=时间()
虽然(某些条件){

processInformation();
如果($x+60)
您可以将最大执行时间的值从30秒增加到任意值。例如:如果要将最大执行时间限制设置为3分钟(而不是30秒),则可以设置为:

ini_set('max_execution_time', 180); //maximum execution time of 3 minutes

这样,您可以根据需要设置时间。

您可以将最大执行时间的值从30秒增加到任意值。例如:如果要将最大执行时间限制设置为3分钟(而不是30秒),则可以设置为:

ini_set('max_execution_time', 180); //maximum execution time of 3 minutes

这样,您可以根据需要设置时间。

使用
processInformation()函数跟踪所花费的时间,如果接近最大执行时间,则返回一个错误条件(或在函数中引发异常)。什么是
processInformation
花费这么长的时间?php可以在30秒内完成很多工作。这通常意味着函数中的逻辑没有设置某个条件变量来打破循环。@nickb,好主意,但您建议如何保持时间跟踪?使用
processInformation()函数跟踪所花费的时间,如果接近最大执行时间,则返回一个错误条件(或在函数中引发异常)。什么是
processInformation
花费这么长的时间?php可以在30秒内完成很多工作。这通常意味着函数中的逻辑没有设置某个条件变量来打破循环。@nickb,好主意,但您建议如何保持时间跟踪?