20

他们是否可以选择将 curl 请求的输出保存在 php 变量中?

因为如果我只保存 $result 我得到 1 或没有

<?php
$url='http://icanhazip.com';
$proxy=file ('proxy.txt');
$useragent='Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)';

for($x=0;$x<count($proxy);$x++)
{
$ch = curl_init();
//you might need to set some cookie details up (depending on the site)
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
curl_setopt($ch, CURLOPT_URL,$url); //set the url we want to use
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 0);
curl_setopt($ch, CURLOPT_PROXY, $proxy[$x]);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent); //set our user agent
$result= curl_exec ($ch); //execute and get the results
print $result; //display the reuslt
$datenbank = "proxy_work.txt"; 
$datei = fopen($datenbank,"a");
fwrite($datei, $result);  
fwrite ($datei,"\r\n"); 
curl_close ($ch);
}
?>
4

2 回答 2

35

您需要将CURLOPT_RETURNTRANSFER选项设置为 true。

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
于 2013-08-13T08:01:08.523 回答
2

您需要添加 curl 选项 CURLOPT_RETURNTRANSFER 的设置:

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

有了这个,您可以避免输出并使程序继续运行。

于 2013-11-01T17:48:46.050 回答