<div class="codetitle"><a style="CURSOR: pointer" data="35207" class="copybut" id="copybut35207" onclick="doCopy('code35207')"> 代码如下:<div class="codebody" id="code35207"> 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'); // <rss version="2.0"> $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://52php.cn/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 52php.cn'); $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://52php.cn/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方法输出到页面 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|