【发布时间】:2012-10-02 20:48:28
【问题描述】:
我正在尝试将 RSS 提要引入我的 PHP 代码。当我使用 Google 阅读器查看提要时,我在提要中看到数百个项目。但是,当我将它放入我的代码中时,我只看到了 10 个。
造成这种差异的原因是什么?如何获取完整的提要?
【问题讨论】:
我正在尝试将 RSS 提要引入我的 PHP 代码。当我使用 Google 阅读器查看提要时,我在提要中看到数百个项目。但是,当我将它放入我的代码中时,我只看到了 10 个。
造成这种差异的原因是什么?如何获取完整的提要?
【问题讨论】:
由于您没有显示您的代码,因此无法确定地说明问题所在。但是,您将问题标记为 SimplePie 问题,并且 SimplePie 在某些地方默认为 10 个项目。所以,这很可能是正在发生的事情。
如果您想要更多项目,您需要告诉它显示更多项目。见the Render Options section of the wiki documentation。注意items 选项。 "要显示的项目数(其余项目在单击“更多”之前隐藏)。默认为 10。"
更新:您的评论提醒我您正在使用 Google 阅读器查看 RSS 提要中的内容。但谷歌阅读器将包含不再在提要中的内容。与 Google 的 Feed API 一样,Google Reader 会长时间(也许永远?)缓存内容,以便用户可以查看来自黑暗过去的条目。但实际的 RSS 提要通常不会包含非常旧的项目,可能是为了保持 RSS 提要的大小合理,以便处理它的人快速响应。
【讨论】:
<?php include_once 'php/autoloader.php'; $feed = new SimplePie(); $feed->set_feed_url('http://feeds.feedburner.com/sportsblogs/sbnation.xml'); $feed->enable_cache(false); $feed->init(); $feed->handle_content_type(); ?> 底部代码块:<?php $pattern = "/^http\:\/\/www\.sbnation\.com\/college-football\//"; $counter = 0; foreach ($feed->get_items() as $item) { if (preg_match($pattern, $item->get_permalink())) { echo $item->get_permalink(); } else { //do nothing } } ?>
http://www.sbnation.com/college-football/ 开头的条目。也许只有十个这样的项目。我现在正在查看提要,我看到这样的项目为零,所以我不确定发生了什么。