1
我使用curl完成了此代理。我無法成功獲取要在頁面中顯示的xml。我想在本地保存副本沒有成功,我想(已在下面的完整代碼):如何保存通過curl獲取的xml文件?
$fp = fopen('data.xml', 'w');
fwrite($fp, $xml);
fclose($fp);
但我沒有錯誤和一個空的「data.xml中」文件......如何這樣做? 謝謝
[編輯2]:解決了,我剛添加了標誌:curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
並完成! 。(代碼更新下面 的代碼與@Spell建議
define ('HOSTNAME', 'http://www.camara.gov.br');
$path = "http://www.camara.gov.br/SitCamaraWS/Deputados.asmx/ObterDeputados?";
$url = HOSTNAME.$path;
$session = curl_init($path);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_HTTPGET, true);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.76 Safari/537.36');
header("Content-Type: text/xml");
$xml = curl_exec($session);
curl_close($session);
file_put_contents ('./data.xml', $xml);
?>
嗨@Spell,感謝您的幫助。它幾乎做到了,但我仍然得到一個空文件......我用現在正在運行的代碼編輯了問題,並帶有一個鏈接。此外,如果我離開回聲,它似乎將字符串追加到XML導致錯誤的結尾,所以我現在剝離它。你能再看看這個嗎?謝謝 –
缺少'curl_setopt($ session,CURLOPT_RETURNTRANSFER,true);'上面編輯的代碼。解決了。謝謝 –
樂意提供幫助。請設置一個正確的答案:) – Spell