• 技术文章 >php教程 >php手册

    通过PHP操作XML入门

    2016-06-13 10:36:15原创508


    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">
    }
    ?>

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:PHP几个常用的去空、分组、调试数组函数 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php实现refresh刷新页面批量导入数据的方法• PHP+redis实现添加处理投票的方法• 用php守护另一个php进程的例子• PHP项目开发中最常用的自定义函数整理• php开发中的页面跳转方法总结,php开发页面跳转
    1/1

    PHP中文网