PHP基于DOM创建xml文档的方法示例


Posted in PHP onFebruary 08, 2017

本文实例讲述了PHP基于DOM创建xml文档的方法。分享给大家供大家参考,具体如下:

DOM创建xml文档

用dom创建如下文档:

<booklist>
<book id="1">
<title>天龙八部</title>
<author>金庸</author>
<content>
<![CDATA[ 天龙八部是金庸写的一本武侠小说,非常好看! ]]>
</content>
</book>
</booklist>

实现步骤:

1、创建DOM对象 ——》2、创建节点——》3、创建下级节点——》4、将下级节点加入到上级节点中——》5、创建属性节点——》6、将属性节点加入到拥有该属性的节点中——》7、如果还有节点则重复2~6步骤——》8、将最高级节点(即根节点)加入到DOM对象中——》9、打开或存储xml文档。

在创建节点的过程中既可以从最下级节点开始创建,也可以从根节点开始。实现代码如下:

<?php
header('Content-Type: text/xml;');
$dom = new DOMDocument('1.0','utf-8');//建立DOM对象
$no1 = $dom->createElement('booklist');//创建普通节点:booklist
$dom->appendChild($no1);//把booklist节点加入到DOM文档中
$no2 = $dom->createElement('book');//创建book节点
$no1->appendChild($no2);//把book节点加入到booklist节点中
$no3 = $dom->createAttribute('id');//创建属性节点:id
$no3->value = 1;//给属性节点赋值
$no2->appendChild($no3);//把属性节点加入到book节点中
$no3 = $dom->createElement('title');
$no2->appendChild($no3);
$no4 = $dom->createTextNode('天龙八部');//创建文本节点:天龙八部
$no3->appendChild($no4);//把天龙八部节点加入到book节点中
$no3 = $dom->createElement('author');
$no2->appendChild($no3);
$no4 = $dom->createTextNode('金庸');//创建文本节点:天龙八部
$no3->appendChild($no4);//把天龙八部节点加入到book节点中
$no3 = $dom->createElement('content');
$no2->appendChild($no3);
$no4 = $dom->createCDATASection('天龙八部是金庸写的一本武侠小说,非常好看!');//创建文CDATA节点
$no3->appendChild($no4);//把天龙八部节点加入到book节点中
header('Content-type:text/html;charset=utf-8');
echo $dom->save('booklist.xml')?'存储成功':'存储失败';//存储为xml文档
/*直接以xml文档格式打开
header('Content-type:text/xml');
echo $dom->savexml();
*/
?>
PHP 相关文章推荐
example1.php
Oct 09 PHP
福利彩票幸运号码自动生成器
Oct 09 PHP
PHP Token(令牌)设计
Mar 15 PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
Feb 16 PHP
PHP实现利用MySQL保存session的方法
Aug 23 PHP
ThinkPHP整合百度Ueditor图文教程
Oct 21 PHP
PHP类和对象相关系统函数与运算符小结
Sep 28 PHP
Yii框架防止sql注入,xss攻击与csrf攻击的方法
Oct 18 PHP
thinkPHP简单调用函数与类库的方法
Mar 15 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
Jun 16 PHP
PHP使用glob方法遍历文件夹下所有文件的实例
Oct 17 PHP
laravel 获取当前url的别名方法
Oct 11 PHP
PHP输出XML格式数据的方法总结
Feb 08 #PHP
PHP中大括号'{}'用法实例总结
Feb 08 #PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 #PHP
php实现连接access数据库并转txt写入的方法
Feb 08 #PHP
php unicode编码和字符串互转的方法
Aug 12 #PHP
用PHP将Unicode 转化为UTF-8的实现方法(推荐)
Feb 08 #PHP
一键生成各种尺寸Icon的php脚本(实例)
Feb 08 #PHP
You might like
用ADODB来让PHP操作ACCESS数据库的方法
2006/12/31 PHP
PHP 配置文件中open_basedir选项作用
2009/07/19 PHP
php面向对象全攻略 (五) 封装性
2009/09/30 PHP
PHP运行环境配置与开发环境的配置(图文教程)
2013/06/04 PHP
thinkphp的dump函数无输出实例代码
2016/11/15 PHP
完美解决Thinkphp3.2中插入相同数据的问题
2017/08/01 PHP
PHP使用POP3读取邮箱接收邮件的示例代码
2020/07/08 PHP
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
Array.prototype.slice 使用扩展
2010/06/09 Javascript
javascript中var的重要性分析
2015/02/11 Javascript
jquery实现图片上传之前预览的方法
2015/07/11 Javascript
最全的Javascript编码规范(推荐)
2016/06/22 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
jQuery实现checkbox全选功能完整实例
2018/07/12 jQuery
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
vue实现页面切换滑动效果
2020/06/29 Javascript
JavaScript this关键字的深入详解
2021/01/14 Javascript
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
python各种语言间时间的转化实现代码
2016/03/23 Python
python中使用iterrows()对dataframe进行遍历的实例
2018/06/09 Python
解决django FileFIELD的编码问题
2020/03/30 Python
Python3利用scapy局域网实现自动多线程arp扫描功能
2021/01/21 Python
Python图像处理之膨胀与腐蚀的操作
2021/02/07 Python
英国床垫在线:Mattress Online
2016/12/07 全球购物
法国在线宠物店:zooplus.fr
2018/02/23 全球购物
办公室主任主任岗位责任制
2014/02/11 职场文书
学习标兵获奖感言
2014/02/20 职场文书
《池塘边的叫声》教学反思
2014/04/12 职场文书
宣传口号大全
2014/06/16 职场文书
学校党委副书记个人对照检查材料思想汇报
2014/09/28 职场文书
企业年检委托书范本
2014/10/14 职场文书
离婚起诉书范本
2015/05/18 职场文书
盲山观后感
2015/06/11 职场文书
python实现socket简单通信的示例代码
2021/04/13 Python
html+css实现赛博朋克风格按钮
2021/05/26 HTML / CSS
MySQL悲观锁与乐观锁的实现方案
2021/11/02 MySQL