PHP multi cURL中包含数据的对象是什么

时间:2016-01-02 14:17:14

标签: php curl

从PHP手册中可以执行多次卷曲:

    // create both cURL resources
    $ch1 = curl_init();
    $ch2 = curl_init();

    // set URL and other appropriate options
    curl_setopt($ch1, CURLOPT_URL, "http://lxr.php.net/");
    curl_setopt($ch1, CURLOPT_HEADER, 0);
    curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
    curl_setopt($ch2, CURLOPT_HEADER, 0);

    //create the multiple cURL handle
    $mh = curl_multi_init();

    //add the two handles
    curl_multi_add_handle($mh,$ch1);
    curl_multi_add_handle($mh,$ch2);

    $active = null;
    //execute the handles
    do {
        $mrc = curl_multi_exec($mh, $active);
    } while ($mrc == CURLM_CALL_MULTI_PERFORM);

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

//---------

链接:http://php.net

我可以按原样复制粘贴代码,它会让我获得内容。注意我不会“回应”任何东西,所以它没有回应。

所以我的问题是,数据来自哪里?持有数据的对象是什么?我知道您必须将CURLOPT_RETURNTRANSFER设置为true,然后使用curl_multi_getcontent()获取内容,但正如我所说,脚本检索内容,但对象在哪里?

1 个答案:

答案 0 :(得分:1)

默认情况下, curl_exec curl_multi_exec 都会输出响应。您需要将 CURLOPT_RETURNTRANSFER 选项设置为 true 以禁用输出,并使这些函数返回响应。