根据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()
获取内容,但正如我所说,脚本检索内容,但对象在哪里?
默认情况下,curl_exec和curl_multi_exec都会输出响应。您需要将CURLOPT_RETURNTTRANSFER选项设置为true以禁用输出并使这些函数返回响应。