0

我已经有一个工作卷曲,但我只能测试非代理网站。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$data = curl_exec($ch);
curl_close($ch);

但是我需要它能够通过我的api中的代理(socks5)进行连接,我可以通过使用firefox并更改代理设置来测试它,api返回一个带有日文字符的xml。

4

1 回答 1

0
// connect using curl
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);

// put the proxy settings here
curl_setopt($ch, CURLOPT_PROXY,$proxyHost);         
curl_setopt($ch, CURLOPT_PROXYPORT,$proxyPort);

// connect with socks5
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// get the response and close curl connection
$data = curl_exec($ch);
curl_close($ch);

// Convert the return to xml object
$sXML = $data;
$oXML = new SimpleXMLElement($sXML);

// show it in the browser, this is optional.
echo '<pre>';       
var_dump($oXML);
echo </pre>;

试试这个。请记住,这$oXML是一个xml 对象,您可以使用->运算符获取对象的子对象。

于 2013-10-16T05:59:49.540 回答