2

このコードでは、curl_multi_exec 関数を 2 回呼び出す必要があるのはなぜですか。

最初のループで、curl_multi_exec ハンドラを実行してサブ ハンドラを実行しています。CURLM_CALL_MULTI_PERFORM が $mrc と異なる場合、ループは終了します。

2 番目のループでは、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 に答える