PHP PEAR就提供一個RSS解析類,方便從使用者提供的RSS中,獲得相應的資訊。
需求
下載XML_RSS: http://pear.php.net/package/XML_RSS
XML_Parser http://pear.php.net/package/XML_Parser
PEAR http://pear.php.net/package/PEAR
具體路徑之間的關係,稍微調試一下即可,我是把壓縮包解壓後,把裡面的RSS.php,Parser.php,PEAR.php都放在同一目錄下,然後把RSS.php裡面的
require_once XML/Parser.php;
改成
require_once XML/Parser.php;
就可以使用了。
RSS版本
經簡單的測試,我發現它對RSS上述的三個主要版本,都工作的很好,沒有出現問題。說明它是至少支援RSS主要版本的(0.91,1.0,2.0)
例子
用XML_RSS來分析RSS是特別簡單的。先包含進類檔案:
require "RSS.php";
根據資源地址建立類執行個體:
$url = "test.rss";
$r =& new XML_RSS($url);
當然這裡的$url也可以是一個遠程路徑,這需要把php.ini裡的allow_url_fopen設為On,因為它預設設定即為此,所以一般不用改。
執行分析:
$r->parse();
下面就可以得到各種資訊了:
$r->getStructure() 返回是一個數組,包含了RSS檔案的所有結構資訊。
$r->getChannelInfo() 返回是一個數組,包含了RSS目前通道的概要資訊,比如title,link,description等。
$r->getItems() 返回一個二維數組,包含了RSS檔案裡的所有item資訊,每組資訊裡都有title,link,description,date等等。
$r->getImages() 返回一個二維數組,包含了RSS檔案裡的所有image資訊,每組資訊裡都有title,link,url等。
$r->getTextinputs() 返回一個二組數組,包含了RSS檔案裡的所有檔案輸入地區資訊,每組資訊裡都有title,link,description,name等。
如何根據一個地址列印內容列表
$url = "http://www.BkJia.com/data/rss/37.xml";
$r =& new XML_RSS($url);
$r->parse();
$items = $r->getItems()
foreach ($items as $k=>$item)
{
//$item裡麵包含了 link:內容連結;title:內容標題;description:內容描述;pubdate:內容表布日期,視網站而定,不一定提供
?>
" target="_blank">
}
?>
http://www.bkjia.com/PHPjc/486541.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/486541.htmlTechArticlePHP PEAR就提供一個RSS解析類,方便從使用者提供的RSS中,獲得相應的資訊。 需求 下載XML_RSS: http://pear.php.net/package/XML_RSS XML_Parser http://pear.php...