2012-10-29 22 views
0

我有一個功能,例如下面,卻得到了錯誤String could not be parsed as XML爲什麼當嘗試創建一個simplexmlelement對象時看到這個錯誤`String不能被解析爲XML`?

$category_feed_url = "http://www.news4u.com/blogs/category/articles/feed/"; 
$file = file_get_contents($category_feed_url); 
$xml = new SimpleXMLElement($file); 

foreach($xml->channel->item as $feed) 
{ 
    echo $feed->link; 
    echo $feed->title; 
    ... 

爲什麼發生這個錯誤。

+1

傳遞給SimpleXMLElement的字符串應該是格式良好的xml。您的網址中的內容是純HTML。 – air4x

回答

1

該URL指向一個HTML文檔。

文檔既可以是HTML又可以是XML,但這不是。

它失敗了,因爲你試圖解析非XML,就好像它是XML。

請參閱How to parse and process HTML with PHP?瞭解如何使用PHP解析HTML。

雖然您似乎期待RSS feed,但該文檔並不像一個或引用一個。該網站看起來相當垃圾,可能該URI用於指向RSS源,但該域名現在已經下降到鏈接農場垃圾郵件發送者。如果是這樣,你應該找到你收集的信息的替代來源。

0

「字符串不能被解析爲XML」,你的鏈接是一個html頁面。

相關問題