【问题标题】:how to display only 5 records?如何只显示 5 条记录?
【发布时间】:2011-09-12 08:13:14
【问题描述】:

我想要做的是阅读 rssfeed,所以我已经做到了,但是我显示为 foreach 循环,那么我怎样才能只显示 5 条记录?现在我得到了 10 多条记录,但我只需要前 5 条记录,无论如何 php、javascript 或 jquery 不是让它只显示 5 条记录吗?

这是我读取 rss 文件的代码:

function getrssFeed($feed_url) {

$content = file_get_contents($feed_url);    
$x = new SimpleXmlElement($content);
echo "<ul>";

foreach($x->channel->item as $entry) {      
     echo "<li><a href = '$entry->link' title='$entry->title'><h3>" . $entry->title . "</h3></a>" . $entry->pubDate . "<br /><br />" . strip_tags($entry->description) . "</li>";   
}
echo "</ul>";   }

getrssFeed("http://thestar.com.my.feedsportal.com/c/33048/f/534555/index.rss");

谢谢

【问题讨论】:

    标签: php javascript jquery rss


    【解决方案1】:

    最简单的方法是在 5 次迭代后停止循环:

    $i = 0;
    foreach($x->channel->item as $entry) {      
      // do something
      $i++;
      if($i==5){
        break;
      }  
    }
    

    另一种(更漂亮)的方法是使用for-loop 而不是foreach

    for($i=0; $i<=min(5, count($x->channel->item)); $i++) {   
      $entry = $x->channel->item[$i];
      // do something
    }
    

    编辑:
    感谢 Juhana,我更改了代码以考虑到这一点。

    【讨论】:

    • 在第二种情况下,您必须考虑总共可能少于 5 个项目。
    【解决方案2】:

    尝试使用 if 语句在 foreach 循环中放置一个计数器,以检查计数器何时超过 5。如果计数器低于 5 -> 显示 RSS 帖子,counter++。否则 -> 退出循环。

    【讨论】:

    • 或者改用for-loop。
    • 我宁愿在 5 次迭代后打破循环,否则你将循环每个条目 >5 只是为了什么都不做 - 这是毫无意义的。
    • 啊,是的,打破循环会更好。我会编辑它:)。谢谢。
    【解决方案3】:

    为什么不使用简单的 for 循环呢?

    for($i = 0, $i <= 5, $i++) {      
        echo "<li><a href = '$x->channel->item[$i]->link' title='$x->channel->item[$i]->title'><h3>" . $x->channel->item[$i]->title . "     </h3></a>" . $x->channel->item[$i]->pubDate . "<br /><br />" . strip_tags$x->channel->item[$i]->description) . "</li>";   
    }
    

    【讨论】:

      【解决方案4】:

      您可以使用 jQuery feed 插件。

          $('div.feed').Feed({
          count:5;
          });
          <div class="feed" link="http://thestar.com.my.feedsportal.com/c/33048/f/534555/index.rss" ></div>
      

      Feed 将加载到容器 Feed。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-19
        • 2016-07-11
        • 2015-09-05
        • 1970-01-01
        • 2018-06-02
        相关资源
        最近更新 更多