2016-09-15 32 views
0

我試圖打印一個xml飼料到我的php頁面,但此代碼不能正常工作,我不知道爲什麼。它只是顯示了從xpath到?>的瀏覽器中的代碼。誰能幫我這個請代碼爲xml飼料無法正常工作

<html> 
<head> 
    <title>XML FEED</title> 
</head> 
<body> 
    <ul> 
    <?php 
    $dom = simplexml_load_file("http://feeds.bbci.co.uk/news/rss.xml"); 
    foreach ($dom->xpath("/channel/item") as $item) 
    { 
     print "<li>"; 
     print $item->title; 
     print "</li>"; 
    } 
    ?> 
    </ul> 
</body> 
</html> 
+0

對於首先,嘗試完整的PHP標記'<?php' –

+0

我做過了,它仍然沒有顯示任何來自RSS源 –

+0

Hrm ..嘗試添加print_r($ dom);在你的foreach之前,讓我們看看你是否得到了任何東西。 –

回答

0

考慮調整與雙正向您的XPath斜槓通道不是根元素:

foreach ($dom->xpath("//channel/item") as $item) { 
    ... 
} 

或者,使用根,RSS,元件在表達:

foreach ($dom->xpath("/rss/channel/item") as $item) { 
    ... 
} 
0

我懷疑你的服務器沒有被配置爲允許短PHP標籤(這是無論如何勸阻),因此請務必使用完全打開的標籤。

由於PHP不解析你的代碼,瀏覽被髮送以下...

<? . . . . . foreach ($dom-> 

這是不是有效的HTML,所以它不顯示,但如果您查看網頁的源代碼,你會看到更多你的PHP代碼。

簡單地用<?php開始你的代碼將觸發PHP解析,並且事情應該起作用。

+0

我也使用過<?php,它仍然沒有顯示任何來自RSS提要 –