使用simplexml解析一個feed,但我想抓住feed中最老的項目的日期。有誰知道該怎麼做?謝謝php如何抓取rss feed中最老的項目的日期
$ rss = simplexml_load_file(「http://search.twitter.com/search.atom?lang=en&q=foobar&rpp=100&page=1」);
使用simplexml解析一個feed,但我想抓住feed中最老的項目的日期。有誰知道該怎麼做?謝謝php如何抓取rss feed中最老的項目的日期
$ rss = simplexml_load_file(「http://search.twitter.com/search.atom?lang=en&q=foobar&rpp=100&page=1」);
如果你只是想獲得最後<entry>
元素(document-order),可以使用SimpleXMLElement::xpath()和最後()函數
http://www.w3.org/TR/xpath/說:
孩子::對[位置()=最後()]選擇上下文節點的最後一個子節點
例如
$url = "http://search.twitter.com/search.atom?lang=en&q=foobar&rpp=100&page=1";
$feed = simplexml_load_file($url);
$feed->registerXPathNamespace('atom', 'http://www.w3.org/2005/Atom');
$entry = $feed->xpath('//atom:entry[position()=last()]');
if (isset($entry[0])) {
$entry = $entry[0];
}
else {
die('not found');
}
var_dump($entry);
[position()=last()]
可如果最早的條目不是在文檔順序中的最後一項縮短爲[last()]
,你需要別的東西。
首先從RSS源獲取所有項目,並將它們存儲在數組中,如this。
根據您的排序順序獲取第一個/最後一個結果。
是否對條目進行排序,即,是否要抓取Feed中最後的元素? –
VolkerK
2010-04-10 06:40:39
是的最後一項 - >發佈 – Steven 2010-04-10 06:42:59