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


Posted in PHP onSeptember 30, 2011
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'); 
// <channel> 
$xml->startElement('channel'); 
// title 
$xml->startElement('title'); 
$xml->text('title'); 
$xml->endElement(); 
// link 
$xml->startElement('link'); 
$xml->text('http://3water.com/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 3water.com'); 
$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://3water.com/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方法输出到页面
PHP 相关文章推荐
PHP DataGrid 实现代码
Aug 12 PHP
php在多维数组中根据键名快速查询其父键以及父键值的代码
May 07 PHP
有关PHP中MVC的开发经验分享
May 17 PHP
php一个找二层目录的小东东
Aug 02 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
Feb 01 PHP
php获取远程图片体积大小的实例
Nov 12 PHP
php上传图片存入数据库示例分享
Mar 11 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
Jan 07 PHP
PHP中使用hidef扩展代替define提高性能
Apr 09 PHP
PHP的PDO操作简单示例
Mar 30 PHP
Yii2实现同时搜索多个字段的方法
Aug 10 PHP
在php的yii2框架中整合hbase库的方法
Sep 20 PHP
简单的PHP缓存设计实现代码
Sep 30 #PHP
php利用iframe实现无刷新文件上传功能的代码
Sep 29 #PHP
php json_encode奇怪问题说明
Sep 27 #PHP
PHP安全配置详细说明
Sep 26 #PHP
使用PHP遍历文件夹与子目录的函数代码
Sep 26 #PHP
抓取并下载CSS中所有图片文件的php代码
Sep 26 #PHP
新浪微博API开发简介之用户授权(PHP基础篇)
Sep 25 #PHP
You might like
php文件缓存类汇总
2014/11/21 PHP
php中将一个对象保存到Session中的方法
2015/03/13 PHP
详解PHP安装mysql.so扩展的方法
2016/12/31 PHP
学习JavaScript的最佳方法分享
2011/10/21 Javascript
jQuery点击弹出下拉菜单的小例子
2013/08/01 Javascript
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
JQuery中阻止事件冒泡几种方式及其区别介绍
2014/01/15 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
javascript的document.referrer浏览器支持、失效情况总结
2014/07/18 Javascript
浅谈jquery事件处理
2015/04/24 Javascript
12种JavaScript常用的MVC框架比较分析
2015/11/16 Javascript
详解Node.js:events事件模块
2016/11/24 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
js学习总结之DOM2兼容处理this问题的解决方法
2017/07/27 Javascript
Vue动态组件实例解析
2017/08/20 Javascript
[js高手之路]单例模式实现模态框的示例
2017/09/01 Javascript
详解如何去除vue项目中的#——History模式
2017/10/13 Javascript
element-ui upload组件多文件上传的示例代码
2018/10/17 Javascript
对layui数据表格动态cols(字段)动态变化详解
2019/10/25 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
React+EggJs实现断点续传的示例代码
2020/07/07 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
2020/07/17 Javascript
Python命名空间详解
2014/08/18 Python
Python求解任意闭区间的所有素数
2018/06/10 Python
python 弹窗提示警告框MessageBox的实例
2019/06/18 Python
python 初始化一个定长的数组实例
2019/12/02 Python
python飞机大战pygame游戏背景设计详解
2019/12/17 Python
全网首秀之Pycharm十大实用技巧(推荐)
2020/04/27 Python
Python txt文件如何转换成字典
2020/11/03 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
详解如何解决canvas图片getImageData,toDataURL跨域问题
2018/09/17 HTML / CSS
商务英语专业自荐信
2013/10/14 职场文书
销售文员的岗位职责
2013/11/20 职场文书
离婚协议书怎么写(范本参考)
2014/09/30 职场文书
nginx简单配置多个server的方法
2021/03/31 Servers
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python