2011-04-09 127 views
1

我試圖解析以下http://www.patrickarundell.net/THREE-IE-FEED.asp。我的代碼如下:XML解析 - 致命錯誤

$xml = new SimpleXMLElement('http://www.patrickarundell.net/THREE-IE-FEED.asp', NULL, TRUE); 
echo $xml->asXML(); 

,但我發現了以下錯誤:

致命錯誤:在/內容未捕獲的異常「異常」有消息「字符串不能被解析爲XML」/HostingPlus /c/r/xxxxxxxxxx.com/subdomains/demo3/web/XMLParser.php:15堆棧跟蹤:#0 /content/HostingPlus/c/r/xxxxxxxx.com/subdomains/demo3/web/XMLParser.php(15) :SimpleXMLElement-> __construct('http://www.patr ...',0,true)#1 {main}拋出/content/HostingPlus/c/r/xxxxxxxxxx.com/subdomains/demo3/web/XMLParser .php on line 15

我一直在Google上搜索幾個小時,但沒有有很多運氣找到答案。任何幫助讚賞。

問候, 斯蒂芬

回答

0

下載該文件,並解析本地版本。它解析正確。但是,在放置文件的服務器上,我看到響應不佳。我的猜測是,這個簡單的XML接口使用糟糕的錯誤消息,導致您認爲在實際存在網絡連接問題時存在解析問題。

+0

謝謝邁克爾,它在當地運行時沒有問題。所以必須是服務器的問題。 – Stephen 2011-04-09 12:54:54

0

那麼,你的代碼適合我。當我運行你的代碼時,我沒有這樣的錯誤。但是,這是在我的計算機上的Apache 2服務器上,PHP的權限可能比在運行代碼的機器上稍微寬鬆一些。

如果您只是使用類似下面的內容獲取並顯示URL的內容,會發生什麼?

echo file_get_contents('http://www.patrickarundell.net/THREE-IE-FEED.asp'); 
+0

盧克,URL文件訪問被禁用。這解釋了它,感謝您的幫助。我現在知道它不是我做錯的事。它是服務器的問題。 – Stephen 2011-04-09 13:08:27