2016-02-28 67 views
0

我想解析不同站點上的XML文檔。如果我手動下載它作爲一個XML文檔,一切正常,但是如果我想直接從URL獲取數據file_get_contents無法打開流到ASP.NET頁面

$xml = file_get_contents ("http://www.blueshop.pl/sklepy.aspx"); 

我得到一個錯誤

警告:的file_get_contents(http://www.blueshop.pl/sklepy.aspx) : 無法打開流:HTTP請求失敗!

這裏有什麼問題?我明白這個ASPX頁面?來自外部網站的其他XML文檔可以毫無問題地被讀取。

+0

歡迎計算器!是否可以使用這裏描述的答案來解決您的問題? http://stackoverflow.com/questions/697472/why-file-get-contents-returns-failed-to-open-stream-http-request-failed – Arend

+0

在瀏覽器中打開URL並檢查它是否加載,什麼是其內容。它需要大量的時間來回答,也許你應該通過一個[流上下文](http://php.net/manual/en/ref.stream.php)作爲['file_get_contents()']的第三個參數( http://php.net/manual/en/function.file-get-contents.php)配置更大的超時。 – axiac

+0

我試圖使用捲曲(更新的問題)。有eshop產品〜9MB文件。在瀏覽器加載沒有問題,只是很長一段時間 – user3514052

回答

0

解決的問題,捲曲

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://www.blueshop.pl/sklepy.aspx"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$file = curl_exec($ch); 
curl_close($ch); 


$xml = simplexml_load_string($file); 
foreach ($xml->PRODUCT as $child) 
{ 
     echo $child->NAME."<br/>"; 

}