curl_multi_info_read

Get information about the current transfers

Syntax

curl_multi_info_read ( resource $mh [, int &$msgs_in_queue = NULL ] ) : array

Parameters

mh

A cURL multi handle returned by curl_multi_init().

msgs_in_queue

Number of messages that are still in the queue

Return

On success, returns an associative array for the message, FALSE on failure.

KeyValue
msgThe CURLMSG_DONE constant. Other return values are currently not available.
resultOne of the CURLE_* constants. If everything is OK, the CURLE_OK will be the result.
handleResource of type curl indicates the handle which it concerns.

Examples

<?

$urls = array(
   "https://osbo.com/",
   "https://www.php.net/"
);

$mh = curl_multi_init();

foreach ($urls as $i => $url) {
    $conn[$i] = curl_init($url);
    curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1);
    curl_multi_add_handle($mh, $conn[$i]);
}

do {
    $status = curl_multi_exec($mh, $active);
    if ($active) {
        curl_multi_select($mh);
    }
    while (false !== ($info = curl_multi_info_read($mh))) {
        var_dump($info);
    }
} while ($active && $status == CURLM_OK);

foreach ($urls as $i => $url) {
    $res[$i] = curl_multi_getcontent($conn[$i]);
    curl_close($conn[$i]);
}

var_dump(curl_multi_info_read($mh));

?>
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  object(CurlHandle)#2 (0) {
  }
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  object(CurlHandle)#3 (0) {
  }
}
bool(false)
HomeMenu