PHP curl_multi_info_read函数

PHP curl_multi_info_read函数

(PHP 5)

curl_multi_info_read — 获取当前解析的cURL的相关传输信息

说明

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

查询批处理句柄是否单独的传输线程中有消息或信息返回。消息可能包含诸如从单独的传输线程返回的错误码或者只是传输线程有没有完成之类的报告。

重复调用这个函数,它每次都会返回一个新的结果,直到这时没有更多信息返回时,FALSE 被当作一个信号返回。通过msgs_in_queue返回的整数指出将会包含当这次函数被调用后,还剩余的消息数。

注意: 返回的资源指向的数据调用curl_multi_remove_handle()后将不会存在。

参数

mh

由 curl_multi_init() 返回的 cURL 多个句柄。

msgs_in_queue

仍在队列中的消息数量。

返回值

成功时返回相关信息的数组,失败时返回FALSE。

返回值内容(返回数组的内容) :

_msg_CURLMSG_DONE 常量。其他返回值当前不可用。
_result_CURLE_* 常量之一。如果一切操作没有问题,将会返回 CURLE_OK 常量。
_handle_cURL资源类型表明它有关的句柄。

实例

<?php

$urls = array(
   "http://www.baidu.com/",
   "http://www.google.com.hk/",
   "http://www.ityuan.com/"
);

$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);
    $info = curl_multi_info_read($mh);
    if (false !== $info) {
        var_dump($info);
    }
} while ($status === CURLM_CALL_MULTI_PERFORM || $active);

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"]=>
  resource(5) of type (curl)
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(7) of type (curl)
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(6) of type (curl)
}
bool(false)

更新日志

版本说明
5.2.0_msgs_in_queue_ 被加入。
推荐教程

PHP教程

PHP基础语法学习、实例讲解

Laravel教程

Laravel是一个功能强大的MVC PHP框架

Yii教程

Yii框架是一个用于快速开发的现代Web应用程序的开源PHP框架

PHP array系列函数

PHP array数组系列函数的使用、详解

PHP mysqli系列函数

PHP mysqli系列函数的使用、详解

PHP ftp系列函数

PHP ftp系列函数的使用、详解

PHP PDO系列函数

数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口

PHP filter系列函数

PHP filter系列函数的使用、详解

PHP String系列函数

PHP String系列函数的使用、详解

PHP Math系列函数

PHP Math系列函数的使用、详解

PHP Error和 Logging函数

PHP Error和 Logging函数的使用、详解

PHP 时间函数

PHP 时间函数的使用、详解

PHP curl函数

PHP curl函数的使用、详解

PHP Directory函数

PHP Directory函数的使用、详解

PHP Calendar函数

PHP Calendar函数的使用、详解