2

为什么在这段代码中我需要调用 2 次 curl_multi_exec 函数。

在第一个循环中,我正在执行 curl_multi_exec 处理程序以运行子处理程序。当 CURLM_CALL_MULTI_PERFORM 与 $mrc 不同时,循环结束。

在第二个循环中,我们从 curl 处理程序中找到结果,然后再次执行第一个循环,为什么?

<?php 

    do {
        $mrc = curl_multi_exec($multiHandle, $active);
    } while ($mrc == CURLM_CALL_MULTI_PERFORM);

    while ($active && $mrc == CURLM_OK) {
        if (curl_multi_select($multiHandle, $timeout) != -1) {
            do {
                $mrc = curl_multi_exec($multiHandle, $active);
            } while ($mrc == CURLM_CALL_MULTI_PERFORM);
        }
    }

?>

代码摘自PHP-Doc站点

4

1 回答 1

0

答案在这里curl_multi_exec()

令人沮丧的是,PHP 的文档在某些方面可能毫无用处......

于 2012-06-04T23:22:49.773 回答