Php 如何将curl与代理和日文xml响应一起使用
我已经有了一个工作curl,但我只能测试非代理站点Php 如何将curl与代理和日文xml响应一起使用,php,curl,proxy,Php,Curl,Proxy,我已经有了一个工作curl,但我只能测试非代理站点 $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)进行连接,我可以通过使
$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。//使用curl进行连接
// 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>;
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$URL);
//将代理设置放在这里
curl_setopt($ch,CURLOPT_PROXY,$proxyHost);
curl_setopt($ch,CURLOPT_PROXYPORT,$PROXYPORT);
//用插座5连接
curl_setopt($ch,CURLOPT_PROXYTYPE,CURLPROXY_SOCKS5);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//获取响应并关闭连接
$data=curl\u exec($ch);
卷曲关闭($ch);
//将返回转换为xml对象
$sXML=$data;
$oXML=新的SimpleXMLElement($sXML);
//在浏览器中显示,这是可选的。
回声';
变量转储(oXML);
回声;
试试这个。请记住,$oXML
是一个xml对象,您可以使用->操作符获取对象的子对象