0

当我向 CURL 初始化函数添加参数时:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

它确实打印了我向其发送请求的网站内容,问题是我想手动解析返回的内容($response = curl_exec($ch);)但问题是,网站正在显示页面内容,我想继续拥有网站内容在我的$response变量上,以便我可以解析它,但同时阻止它显示它。

这可行吗?

卷曲代码:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $action);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, '');
curl_setopt($ch, CURLOPT_COOKIEFILE, '');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
$response = curl_exec($ch);
curl_close($ch);
4

1 回答 1

2

您应该将该CURLOPT_RETURNTRANSFER标志设置为 true。来自 PHP.NET 手册

CURLOPT_RETURNTRANSFER TRUE

将传输作为返回值的字符串返回, curl_exec() 而不是直接输出

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
于 2012-06-16T08:07:32.987 回答