set_item_limit在Simplepie中究竟做了什么?

时间:2011-02-08 16:42:01

标签: php simplepie

我想问一些具体的问题。我已阅读过SimplePie手册,但我仍感到困惑。我正在尝试混合来自不同Feed的项目,但是因为我每次抓取并解析Feed时都会通过随机函数将Feed urls传递给SimplePie对象,因此它的第一个项目总是由Simplepie呈现,因此我有很多次相同Feed的相同项目。我使用set_item_limit为每个Feed提供一个项目。

那么我想问的是什么?如果我理解的话,Set_item_limit允许用户循环遍历Feed的所有项目,但只显示用户在函数中指示的数字?

如果我是对的,我可以使用set_item_limit(1)来显示每个Feed的一篇文章,但每次都是一个不同的项而不是最新的一个?

1 个答案:

答案 0 :(得分:0)

set_item_limit()定义了可供展示的Feed数量。

    function fetch_feed($urls, $limit = 3) {
        require_once('lib/simplepie/simplepie.inc');

        $feed = new SimplePie();
        $feed->set_feed_url($urls);
        $feed->set_item_limit($limit);
        $feed->enable_cache(true);
        $feed->set_cache_duration(100);
        $feed->init();
        $feed->handle_content_type();   

        return $feed;
    }

$urls = array('feed_link_1', 'feed_link_2', 'feed_link_3');

$feed = fetch_feed($url, $limit = 5);

foreach($feed as $item){
   // do stuff with the item. This is the single feed item.
}

这是我用于获取Feed的函数。您可以看到set_item_limit();功能的使用。谢谢!