PHP - 继续/中断for循环它当前循环需要超过x秒

时间:2016-03-01 09:13:09

标签: php

我在PHP中使用for循环(100条记录)处理一些数据。我在循环中调用API,大多数时候所有记录都在预期的时间内处理。但是有时候任何一个循环都会花费这么多时间,因为等待api响应会显着增加整个处理时间。

如果任何单个循环花费超过x秒,那么在PHP中是否有任何方法可以“继续”循环,这样我们就可以在预期时间内处理整个记录,但代价是几个未处理的记录?

1 个答案:

答案 0 :(得分:0)

如果您使用CURL来调用API,则可以检查CURLOPT_CONNECTTIMEOUTCURLOPT_TIMEOUT(ref here)。 否则,实现起来并不容易。您应该创建一个多线程环境,其中一个工作线程运行您的循环执行,另一个线程检查执行是否花费太长时间。