我试图通过pubdate对RSS源进行排序,但直到现在还不成功 我尝试过usort方法,但我不能让代码工作
我的实际RSS页面链接click here
这是我的PHP代码,用于显示供稿页面
<?php
$rssfeed = "<?xml version='1.0' encoding='ISO-8859-1'?>
<rss version='2.0'>
<channel>
<title>My RSS feed</title>
<link>http://" . $_SERVER['HTTP_HOST'] . "/</link>
<description>This is an example RSS feed</description>
<language>en-us</language>
<copyright>Copyright (C) 2009 mywebsite.com</copyright>
";
$links = scandir('pages/');
$links = array_diff($links, array('.', '..', 'subpages', 'protected'));
foreach($links as $link){
$descr = file_get_contents('description/' . $link);
$descr = str_replace(array('\\'), array(''), $descr);
$pub = date ('Y m d Hi:s', filemtime('pages/'.$link));
$rssfeed .= "<item>
<title>".$link."</title>
<description>".$descr."</description>
<link>http://" . $_SERVER['HTTP_HOST'] . "/index.php?p=".$link."</link>
<pubDate>".$pub."</pubDate>
</item>";
}
$links = scandir('pages/subpages/');
$links = array_diff($links, array('.', '..'));
foreach($links as $link){
$descr = file_get_contents('description/' . $link);
$descr = str_replace(array('\\'), array(''), $descr);
$pub = date ('Y m d Hi:s', filemtime('pages/subpages/'.$link));
$rssfeed .= "<item>
<title>".$link."</title>
<description>".$descr."</description>
<link>http://" . $_SERVER['HTTP_HOST'] . "/index.php?p=".$link."</link>
<pubDate>".$pub."</pubDate>
</item>";
}
$rssfeed .= "</channel></rss>";
echo $rssfeed;
?>
我之前尝试过使用像
这样的东西function cmp($pub, $b)
{
if ($pub == $b) {
return 0;
}
return ($pub < $b) ? -1 : 1;
}
usort($a, "cmp");
但我无法让它发挥作用。有什么想法吗?非常感谢所有帮助