2013-12-13 59 views
0

我想一個頁面錯誤的SimpleXML - 複雜URL

這是我的代碼上顯示從XML提要項目...

$feed = 'http://awebsite.co.uk/directory/rssfeed.php?thecondition=(title%20LIKE%20'%british%'%20OR%20description%20LIKE%20'%british%')'; 
$xml = simplexml_load_file("$feed"); 
if ($xml->channel->item !='') { 
foreach ($xml->channel->item as $item) { 
echo '<li><a href="' . $item->link . '">' . $item->title . '</a></li>'; 
} 
} 
else { echo 'None'; } 

但是,由於它給複雜的供稿網址很多錯誤。

注意:我已更改此示例的URL中的域。

我該如何做這項工作?

回答

0

如果不首先看到XML源判斷任何事情,但如果它是一個標準的RSS頻道的文件,你應該通過你的項目進行迭代是這樣的:

$items = $xml->xpath('/channel/item'); 
foreach ($items as $item) { 
    echo '<li><a href="' . $item->link . '">' . $item->title . '</a></li>'; 
} 

而且初始條件:if ($xml->channel->item !='') {/*...*/}不真的會去工作。

+0

謝謝......我會考慮到這一點,但是我得到的錯誤是使用複雜的提要URL。 我收到以下錯誤4倍...... 警告:被零除在/home/website/public_html/wp-content/themes/WFclarity/search.php上線78 – user2227359

+0

添加適當的引號來定義變量。由於URL中有單引號,因此以雙引號開頭和結尾。 '$ feed =「http://...../?thecondition =(title%20LIKE%20'%british%'%20OR%20description%20LIKE%20'%british%')」' –

+0

這很棒,但simplexml將該URL轉換爲 thecondition =(標題%2520LIKE%2520'%25british%25'%2520OR%2520description%2520LIKE%2520'%25british%25') – user2227359