PHP中的XML(RSS阅读器)

时间:2015-11-02 12:51:12

标签: php xml rss

我有这个代码,效果很好

$i = 0; // counter
$url = "http://www.banki.ru/xml/news.rss"; // example url to parse
$rss = simplexml_load_file($url); // XML parser
print '<h2><img style="vertical-align: middle;" src="'.$rss->channel->image->url.'" /> '.$rss->channel->title.'</h2>'; // channel title + img with src

foreach($rss->channel->item as $item) {
if ($i < 1) { // parse only 1 item
print '<a href="'.$item->link.'">'.$item->title.'</a><br />';
}

$i++;
}

但我想只显示此Feed中的第二项。我怎么能这样做?

3 个答案:

答案 0 :(得分:3)

更改此

if ($i < 1) { // parse only 1 item
print '<a href="'.$item->link.'">'.$item->title.'</a><br />';
}

if ($i == 1) { // parse only 1 item
print '<a href="'.$item->link.'">'.$item->title.'</a><br />';
}

答案 1 :(得分:0)

尝试:

$i = 0; // counter
$url = "http://www.banki.ru/xml/news.rss"; // example url to parse
$rss = simplexml_load_file($url); // XML parser
print '<h2><img style="vertical-align: middle;" src="'.$rss->channel->image->url.'" /> '.$rss->channel->title.'</h2>'; // channel title + img with src

print '<a href="'.$rss->channel->item[1]->link.'">'.$rss->channel->item[1]->title.'</a><br />';

答案 2 :(得分:0)

只需更改if条件就可以获得第二个会话

&#13;
&#13;
<?php 

$i = 0; // counter
$url = "http://www.banki.ru/xml/news.rss"; // example url to parse
$rss = simplexml_load_file($url); // XML parser
print '<h2><img style="vertical-align: middle;" src="'.$rss->channel->image->url.'" /> '.$rss->channel->title.'</h2>'; // channel title + img with src

foreach($rss->channel->item as $item) {
if ($i > 1) { // parse only 1 item
print '<a href="'.$item->link.'">'.$item->title.'</a><br />';
}

$i++;
}
&#13;
&#13;
&#13;