搞了一天还是这个好(pear,XML_parse, XML_RSS)
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)例子
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/php/)
用XML_RSS来分析RSS是特别简单的。先包含进类文件:
require "RSS.php";
根据资源地址创建类实例:
$url = "test.rss";
$r =& new XML_RSS($url);当然这里的$url也可以是一个远程路径,这需要把php.ini里的allow_url_fopen设为On,因为它默认设置即为此,所以一般不用改。
执行分析:
$r-parse();下面就可以得到各种信息了:
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/php/)
$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等。如何根据一个地址打印内容列表
<?php
$url = "http://blog.wangyou.com/rss/index.php";
$r =& new XML_RSS($url);
$r-parse();
$items = $r-getItems()
foreach ($items as $k=$item)
{
//$item里面包含了 link:内容链接;title:内容标题;description:内容描述;pubdate:内容表布日期,视站点而定,不一定提供
?
<div style="width:500px"<a href="<?=$item["link"]?" target="_blank"<?=$item["title"]?</a</div
<?
}
?
使用技巧:如何用PHP来解析XML文档
使用技巧:如何用PHP来解析XML文档,使用技巧:如何用PHP来解析XML文档