简体   繁体   English

PHP中的XML(RSS阅读器)

[英]XML in PHP (RSS reader)

I have this code and it works great 我有这个代码,它很好用

$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++;
}

But I would like to show only second item from this feed. 但我只想显示此提要中的第二项。 How I can do this? 我该怎么做?

Change this 改变这个

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

to

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

try: 尝试:

$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 />';

Just change the if condition it will get you the second session 只需更改if条件,它将使您获得第二次会话

 <?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++; } 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM