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

    php XMLWriter类的简单示例代码(RSS输出)

    2016-06-13 12:04:55原创646
    复制代码 代码如下:


    include 'mysql.php';
    $mysql= mysql::getObject();
    $mysql->query("SELECT * FROM post");

    $xml = new XMLWriter();
    $xml->openUri('hello.xml'); // or 'php://output'
    $xml->setIndentString(' ');
    $xml->setIndent(true);
    // start
    $xml->startDocument('1.0', 'UTF-8');
    //
    $xml->startElement('rss');
    $xml->writeAttribute('version','2.0');
    //
    $xml->startElement('channel');
    // title
    $xml->startElement('title');
    $xml->text('title');
    $xml->endElement();
    // link
    $xml->startElement('link');
    $xml->text('http://jb51.net/post/');
    $xml->endElement();
    // description
    $xml->startElement('description');
    $xml->text('');
    $xml->endElement();
    // language
    $xml->startElement('language');
    $xml->text('zh-cn');
    $xml->endElement();
    // category
    $xml->startElement('category');
    $xml->text('IT');
    $xml->endElement();
    // copyright
    $xml->startElement('copyright');
    $xml->text('copyright 2011 jb51.net');
    $xml->endElement();
    // for item
    while( $row = $mysql->fetch() )
    {
    $xml->startElement('item');
    // title
    $xml->startElement('title');
    $xml->text( $row['title']);
    $xml->endElement();
    // link
    $xml->startElement('link');
    $xml->text( 'http://jb51.net/post/'.$row['id'].'.html');
    $xml->endElement();
    // description
    $xml->startElement('description');
    $xml->text( $row['text'] );
    $xml->endElement();
    // pubDate
    $xml->startElement('pubDate');
    $xml->text( date('D, d M Y H:i:s T', $row['time']) );
    $xml->endElement();
    // category tag author need to write .over
    $xml->endElement(); // item
    }
    $xml->endElement(); // channel
    $xml->endElement(); // rss
    $xml->endDocument();
    // $xml->flush();


    前面的mysql.php 是封装的mysql数据库功能,单例模式,所以取对象是静态方法 mysql::getObject();
    代码很简单
    openUri('') 方法的参数可以是一个文件,那么xml数据就写入到这个文件
    或者 php://output 输出到缓冲区,然后 flush方法输出到页面
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:php数组函数序列之in_array() 下一篇:PHP将DateTime对象转化为友好时间显示的实现代码
    千万级数据并发解决方案

    相关文章推荐

    • PHP动态网页实现静态HTML技术的方法实现• 开发大型PHP项目的方法(一)• 简化的实现方法(限制为同一会话页面)• php中的网页重定向原创• 投票管理程序_php基础
    1/1

    PHP中文网