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页面间传递参数实例代码
Jun 05 PHP
完美解决PHP中文乱码
Nov 26 PHP
探讨php中遍历二维数组的几种方法详解
Jun 08 PHP
解析php中array_merge与array+array的区别
Jun 21 PHP
PHP中Array相关函数简介
Jul 03 PHP
php接口技术实例详解
Dec 07 PHP
php安全配置记录和常见错误梳理(总结)
Mar 28 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
Aug 11 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
Oct 22 PHP
php连接MSsql server的五种方法总结
Mar 04 PHP
浅谈laravel框架sql中groupBy之后排序的问题
Oct 17 PHP
PHP设计模式(三)建造者模式Builder实例详解【创建型】
May 02 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中删除字符串中最先出现某个字符的实现代码
2013/02/03 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
phpstudy2020搭建站点的实现示例
2020/10/30 PHP
javascript 读取图片文件的大小
2009/06/25 Javascript
Extjs学习笔记之六 面版
2010/01/08 Javascript
分享20款好玩的jQuery游戏
2011/04/17 Javascript
IE 当eval遇上function的处理
2011/08/09 Javascript
javascript 星级评分效果(手写)
2012/12/24 Javascript
Jquery实现瀑布流布局(备有详细注释)
2015/07/31 Javascript
Bootstrap基本样式学习笔记之按钮(4)
2016/12/07 Javascript
js继承实现方法详解
2016/12/16 Javascript
js判断PC端与移动端跳转
2020/12/24 Javascript
JavaScript实现简单的星星评分效果
2017/05/18 Javascript
使用webpack搭建react开发环境的方法
2018/05/15 Javascript
使用ng-packagr打包Angular的方法示例
2018/09/21 Javascript
layui对工具条进行选择性的显示方法
2019/09/19 Javascript
webpack 最佳配置指北(推荐)
2020/01/07 Javascript
vue 在单页面应用里使用二级套嵌路由
2020/12/19 Vue.js
[02:44]DOTA2英雄基础教程 魅惑魔女
2014/01/07 DOTA
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
分享Python字符串关键点
2015/12/13 Python
Django 日志配置按日期滚动的方法
2019/01/31 Python
Python minidom模块用法示例【DOM写入和解析XML】
2019/03/25 Python
python实现打砖块游戏
2020/02/25 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
html5 sessionStorage会话存储_动力节点Java学院整理
2017/07/06 HTML / CSS
C语言中break与continue的区别
2012/07/12 面试题
销售人员求职的自我评价分享
2014/03/15 职场文书
小石潭记导游词
2015/02/03 职场文书
教师个人发展总结
2015/02/11 职场文书
科技馆观后感
2015/06/08 职场文书
教师节校长致辞
2015/07/31 职场文书
CSS 文字装饰 text-decoration & text-emphasis 详解
2021/04/06 HTML / CSS
动画电影《擅长捉弄人的高木同学》6月10日上映!
2022/03/20 日漫
SQL Server的存储过程与触发器以及系统函数和自定义函数
2022/04/10 SQL Server
Win11无法安装更新补丁KB3045316怎么办 附KB3045316补丁修复教程
2022/08/14 数码科技