标签:blog http io ar 文件 on 2014 log cti
和js生成html类似:
生成这样xml
主要步骤:
1:先创建"天龙八部"文本节点
2:再创建普通的name节点
3:再把天龙文本节点,加入到name节点中
4:创建cdata节点,
5:创建intro节点
6:再把cdata节点放入intro中
7:创建goods节点
8:把name,intro放入goods节点
9:创建属性节点goods_id
10:把属性节点放入goods节点
11:创建appstore节点
12:把goods放入appstore节点
13:把appsotore放入文档中
在上面的步骤中,提现出
创建普通节点
创建文本节点
创建CDATA节点
创建属性节点
增加子节点
<?php
// 创建DOM文档对象
$dom = new DOMDocument('1.0','utf-8');
// 1:创建文本节点,
$tl = $dom->createTextNode('天龙八部');
// 2:创建普通节点
$name = $dom->createElement('name');
// 3:把天龙加到name节点中,
$name->appendChild($tl);
// 4:创建CDATA
$cdata = $dom->createCDATASection('天龙八部是部好书');
// 5:创建intro节点
$intro = $dom->createElement('intro');
// 6:把cdata加入intro
$intro->appendChild($cdata);
// 7: 创建goods
$goods = $dom->createElement('goods');
// 8: 把name,intro放入goods下
$goods->appendChild($name);
$goods->appendChild($intro);
// 9:创建属性节点goods_id
$attr = $dom->createAttribute('goods_id');
$attr->value = 'j001';
// 10: 把属性节点加入到goods下
$goods->appendChild($attr);
// 11: 创建appstore
$appstore = $dom->createElement('appstore');
// 12: 把goods加到appstore下
$appstore->appendChild($goods);
// 13: 再把appstore加到文档下面
$dom->appendChild($appstore);
// 最后,想输出也行,想保存也行
/*
// 输出
header('content-type: text/xml'); //不加这句话当做普通html文件解析
echo $dom->savexml(); // 直接输出
*/
echo $dom->save('03.xml')?'OK':'FAIL';
为什么没有换行?再xml里面都是节点,包括换行!
下面是修改和删除
原先的xml文件时这样
<?xml version="1.0" encoding="utf-8"?> <appstore><goods goods_id="j001"><name>天龙八部</name><intro><![CDATA[天龙八部是部好书]]></intro></goods><goods goods_id="j002"><name>七剑下天山</name><intro><![CDATA[下天书也挺好看]]></intro></goods></appstore>
<?php
// 创建DOM对象
$dom = new DOMDocument('1.0','utf-8');
// 载入XML
$dom->load('01.xml');
// 把天龙八部的商品删掉
// 查找goods节点,得到列表,从列表中选取天龙八部节点
$tl = $dom->getElementsByTagName('goods')->item(0);
$tl->parentNode->removeChild($tl);
// 删除结束已经搞定
/*
header('content-type: text/xml;');
echo $dom->savexml();
*/
// 修改节点,节点不能修改,只能替换.
$name = $dom->getElementsByTagName('name')->item(0);
$seven = $dom->createTextnode('七种武器');
$name->replaceChild($seven,$name->firstChild);
header('content-type: text/xml;');
echo $dom->savexml();
运行结果:
标签:blog http io ar 文件 on 2014 log cti
原文地址:http://blog.csdn.net/buyingfei8888/article/details/41249455