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 相关文章推荐
PHP聊天室技术
Oct 09 PHP
Php Mssql操作简单封装支持存储过程
Dec 11 PHP
JS 网站性能优化笔记
May 24 PHP
处理单名多值表单的详解
Jun 08 PHP
CodeIgniter框架URL路由总结
Sep 03 PHP
php控制文件下载速度的方法
Mar 24 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
May 17 PHP
PHP入门教程之表单与验证实例详解
Sep 11 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
May 20 PHP
php数据结构之顺序链表与链式线性表示例
Jan 22 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
Mar 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
浅谈电磁辐射对健康的影响
2021/03/01 无线电
用PHP制作静态网站的模板框架(三)
2006/10/09 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
PHP中imagick函数的中文解释
2015/01/21 PHP
PHP SOCKET编程详解
2015/05/22 PHP
实例讲解php将字符串输出到HTML
2019/01/27 PHP
tp5.1 框架数据库高级查询技巧实例总结
2020/05/25 PHP
js获取判断上传文件后缀名的示例代码
2014/02/19 Javascript
JS实现两表格里数据来回转移的方法
2015/05/28 Javascript
javascript框架设计之框架分类及主要功能
2015/06/23 Javascript
javascript实现多栏闭合展开式广告位菜单效果实例
2015/08/05 Javascript
uploadify多文件上传参数设置技巧
2015/11/16 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
分享jQuery封装好的一些常用操作
2016/07/28 Javascript
详解Angular2中的编程对象Observable
2016/09/17 Javascript
vue.js利用defineProperty实现数据的双向绑定
2017/04/28 Javascript
Form表单上传文件(type=&quot;file&quot;)的使用
2017/08/03 Javascript
Vue中自定义全局组件的实现方法
2017/12/08 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
利用React高阶组件实现一个面包屑导航的示例
2020/08/23 Javascript
[01:54]TI珍贵瞬间系列(三):翻盘
2020/08/28 DOTA
给Python IDLE加上自动补全和历史功能
2014/11/30 Python
python直接访问私有属性的简单方法
2016/07/25 Python
python中hashlib模块用法示例
2017/10/30 Python
python处理document文档保留原样式
2019/09/23 Python
详解Selenium 元素定位和WebDriver常用方法
2020/12/04 Python
前端制作动画的几种方式(css3,js)
2016/12/12 HTML / CSS
检测用户浏览器是否支持CSS3的方法
2009/08/29 HTML / CSS
HTML5中图片之间的缝隙完美解决方法
2017/07/07 HTML / CSS
解析html5 canvas实现背景鼠标连线动态效果代码
2019/06/17 HTML / CSS
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
亚洲领先的旅游体验市场:Voyagin
2019/11/23 全球购物
电子信息毕业生自荐信
2013/11/16 职场文书
应用艺术专业个人的自我评价
2014/01/03 职场文书
纪录片信仰观后感
2015/06/08 职场文书