下面是我构建的完整脚本的一部分,它可以从博客的rss中获取描述,图像和标题。我所做的是为我想要包含在我的页面中的每个RSS使用此代码,结果显示为
第一个博客(显示25个结果)及其下方
第2个博客(显示另外25个结果)
依此类推。
我的目标是根据日期而不是每个博客对结果进行排序。可以说,所有这些帖子都有时间戳,如<pubDate>Wed, 08 Jun 2011 14:12:00 +0000</pubDate>
。
这是我的代码,正确显示了帖子的标题。
<?php
$myrss = new DOMDocument;
libxml_use_internal_errors(TRUE);
$myrss->load ('LINK TO RSS'' . $i; } ?>
这是RSS的结构
<item><guid isPermaLink="false"></guid><pubDate></pubDate><atom:updated></atom:updated><title></title><description></description><link></link><author></author></item>
答案 0 :(得分:0)
粗略地说,我就是这样做的。
$arr_rss_feeds = array( 'link1', 'link2', 'link3', ... );
$arr_posts = array();
foreach( $arr_rss_feeds as $rss_feed )
{
//## Connect to RSS feed, get posts (not shown)
$arr_posts[ strtotime( 'post date field here' ) ] = array(
'title' => 'Title here'
, 'url' => 'URL here'
);
}
//## Sort the posts by timestamp (reverse, so newest first)
krsort( $arr_posts );
foreach( $arr_posts as $post )
{
//## Output your list using the 'title' and 'url' from above.
}
基本上,您将所有Feed中的所有帖子都放入一个带有Unix时间戳键的数组中,根据该时间戳对数组进行排序,然后按顺序输出它们。