[php] php操作xml
xml文件
<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
<item id="Title" aa="ddd"><![CDATA[Discuz! Style]]></item>
<item id="Data" aa="ddd">
<item id="name" aa="ddd"><![CDATA[默认风格]]></item>
<item id="templateid" aa="ddd"><![CDATA[]]></item>
<item id="tplname" aa="ddd"><![CDATA[默认模板套系]]></item>
<item id="directory" aa="ddd"><![CDATA[./template/default]]></item>
<item id="copyright" aa="ddd"><![CDATA[康盛创想(北京)科技有限公司]]></item>
<item id="style" aa="ddd">
<item id="smfont" aa="ddd"><![CDATA[Arial]]></item>
<item id="threadtitlefontsize" aa="ddd"><![CDATA[14px]]></item>
<item id="threadtitlefont" aa="ddd"><![CDATA[Tahoma,'Microsoft Yahei','Simsun']]></item>
<item id="smfontsize" aa="ddd"><![CDATA[0.83em]]></item>
<item id="tabletext" aa="ddd"><![CDATA[#444]]></item>
<item id="midtext" aa="ddd"><![CDATA[#666]]></item>
<item id="lighttext" aa="ddd"><![CDATA[#999]]></item>
<item id="link" aa="ddd"><![CDATA[#333]]></item>
<item id="highlightlink" aa="ddd"><![CDATA[#369]]></item>
<item id="noticetext" aa="ddd"><![CDATA[#F26C4F]]></item>
<item id="bgcolor" aa="ddd"><![CDATA[#FFF background.png repeat-x 0 0]]></item>
<item id="msgfontsize" aa="ddd"><![CDATA[14px]]></item>
<item id="sidebgcolor" aa="ddd"><![CDATA[ vlineb.png repeat-y 0 0]]></item>
<item id="headerborder" aa="ddd"><![CDATA[]]></item>
<item id="headerbgcolor" aa="ddd"><![CDATA[]]></item>
<item id="inputborderdarkcolor" aa="ddd"><![CDATA[#848484]]></item>
<item id="stypeid" aa="ddd"><![CDATA[]]></item>
<item id="inputbg" aa="ddd"><![CDATA[#FFF]]></item>
<item id="commonborder" aa="ddd"><![CDATA[#CDCDCD]]></item>
<item id="commonbg" aa="ddd"><![CDATA[#F2F2F2]]></item>
<item id="specialborder" aa="ddd"><![CDATA[#C2D5E3]]></item>
<item id="specialbg" aa="ddd"><![CDATA[#E5EDF2]]></item>
<item id="dropmenuborder" aa="ddd"><![CDATA[#DDD]]></item>
<item id="floatmaskbgcolor" aa="ddd"><![CDATA[#000]]></item>
<item id="dropmenubgcolor" aa="ddd"><![CDATA[#FEFEFE]]></item>
<item id="floatbgcolor" aa="ddd"><![CDATA[#FFF]]></item>
<item id="lightlink" aa="ddd"><![CDATA[#FFF]]></item>
<item id="menuhoverbgcolor" aa="ddd"><![CDATA[#005AB4 nv_a.png no-repeat 50% -33px]]></item>
<item id="titlebgcolor" aa="ddd"><![CDATA[#E5EDF2 titlebg.png repeat-x 0 0]]></item>
<item id="fontsize" aa="ddd"><![CDATA[12px/1.5]]></item>
<item id="font" aa="ddd"><![CDATA[Tahoma,'Microsoft Yahei','Simsun']]></item>
<item id="styleimgdir" aa="ddd"><![CDATA[]]></item>
<item id="imgdir" aa="ddd"><![CDATA[]]></item>
<item id="boardimg" aa="ddd"><![CDATA[logo.png]]></item>
<item id="available" aa="ddd"><![CDATA[]]></item>
<item id="headertext" aa="ddd"><![CDATA[#444]]></item>
<item id="footertext" aa="ddd"><![CDATA[#666]]></item>
<item id="menubgcolor" aa="ddd"><![CDATA[#2B7ACD nv.png no-repeat 0 0]]></item>
<item id="menutext" aa="ddd"><![CDATA[#FFF]]></item>
<item id="menuhovertext" aa="ddd"><![CDATA[#FFF]]></item>
<item id="wrapbg" aa="ddd"><![CDATA[#FFF]]></item>
<item id="wrapbordercolor" aa="ddd"><![CDATA[#CCC]]></item>
<item id="contentwidth" aa="ddd"><![CDATA[630px]]></item>
<item id="contentseparate" aa="ddd"><![CDATA[#C2D5E3]]></item>
<item id="inputborder" aa="ddd"><![CDATA[#E0E0E0]]></item>
</item>
<item id="version" aa="ddd"><![CDATA[X3.1]]></item>
</item>
</root>
1.DOMDocument方法
$xml=new DOMDocument();
$xml->load($file);
//读出item节点
$item=$xml->getElementsByTagName("item");
2.节点的属性增删改操作
$xml=new DOMDocument();
$xml->load($file);
$item=$xml->getElementsByTagName("item");
foreach ($item as $key=>$v){
echo $v->getAttribute("id");//获取属性为id的值
$v->setAttribute("aa",'ddd');//增加一个新的属性aa
$v->removeAttribute("aa");//删除属性 }
3.节点的增删改
$xml=new DOMDocument();
$xml->load($file);
$node=$xml->documentElement;
// 添加节点
$root=$xml->getElementsByTagName('root')->item(0);//获得根节点
$elem=$xml->createElement("aa","dddd");//添加aa 节点
$elem_attr=$xml->createAttribute("test");//添加属性
$elem_attr->value="aaaa";//设置属性的值
$elem->appendChild($elem_attr);//添加到节点下
$root->appendChild($elem);//将aa 添加到根节点下
//删除节点
$node=$xml->documentElement;
$item=$xml->getElementsByTagName("item")->item(0);
$node->removeChild($item);//删掉第一个节点
[php] php操作xml的更多相关文章
- Asp.Net 操作XML文件的增删改查 利用GridView
不废话,直接上如何利用Asp.NET操作XML文件,并对其属性进行修改,刚开始的时候,是打算使用JS来控制生成XML文件的,但是最后却是无法创建文件,读取文件则没有使用了 index.aspx 文件 ...
- php中通过DOM操作XML
DOM文档在js里早就接触过,知道DOM不但可以操作html文档,还可以操作XHTML,XML等文档,有着极强的通用性,下面我们通过两个小例子,看看在PHP中是如何用DOM操作XML文档的,和js中差 ...
- 使用dom4j操作XML
DOM4J介绍 DOM4J是使用Java语言编写的,用于读写及操作XML的一套组件,DOM4J同时具有DOM修改文件的优点和SAX读取快速的优点. DOM4J的使用 首先下载dom4j的JAR包,我用 ...
- 使用JDOM操作XML
JDOM介绍 JDOM是使用Java语言编写的,用于读写及操作XML的一套组件,Jdom同时具有DOM修改文件的优点和SAX读取快速的优点. JDOM的使用 首先下载JDOM的JAR包,本文使用的是j ...
- php : DOM 操作 XML
DOM 操作 XML 基本用法 XML文件: person.XML <?xml version="1.0" encoding="utf-8" ?> ...
- Strus2第一次课:dom4j操作xml
先从底层的xml操作技术记录: 当我们新建一个项目,什么架包都没加入的时候,java提供了 org.w3c.dom给我们操作xml里面的元素 import org.w3c.dom.Document; ...
- .NET 操作XML
在C#.net中如何操作XML 需要添加的命名空间: using System.Xml; 定义几个公共对象: XmlDocument xmldoc ; XmlNode xmlnode ; XmlEle ...
- php操作xml
最近计划写个人的小网站,一系列原因选择了用php来写,最大的问题就是虽然php很流行,但我从来没有接触过php,看了一个多星期的基本语法后做些小练习热热身,但是期间是各种问题啊,主要是对php不熟悉, ...
- JavaScript操作XML
JavaScript操作XML (一) JavaScript操作XML是通过XML DOM来完成的.那么什么是XML DOM呢?XML DOM 是: 用于 XML 的标准对象模型 用于 XML 的标准 ...
- C#操作XML方法集合
一 前言 先来了解下操作XML所涉及到的几个类及之间的关系 如果大家发现少写了一些常用的方法,麻烦在评论中指出,我一定会补上的!谢谢大家 * 1 XMLElement 主要是针对节点的一些属性进行操 ...
随机推荐
- vc++调用web服务传输文件
bool webService::UploadFile(LPWSTR appKey, LPWSTR fileName, const int len, unsigned char * buff) { t ...
- 针对Chrome谷歌等浏览器不再支持showModalDialog的解决方案
最近在维护一个老项目,之前都是用IE来调试代码的.今天想着测试一下项目的兼容性,就用了谷歌浏览器,然后就遇到这样一个问题:一段用showModalDialog实现弹出模态框和返回值的js代码,在调试时 ...
- 安装linux下面用来配置网络,防火墙,系统服务等设置的图形小工具Setup
Setup命令是linux下面用来配置网络,防火墙,系统服务等设置的图形小工具.使用起来非常方便简单,可是centos\redhat最小化安装之后发现setup命令工具用不了. 接下来介绍如何安装se ...
- centos yum方式安装net-snmp v3
SNMPv3的安全报头采用用户安全模式(USM),其提供具有机密性和完整性的网络管理通信.机密性通过采用数据加密标准(DES)来提供.尽管 这一算法以脆弱性著称(由于它采用的是40位的密钥),但与明文 ...
- 使用guava变形数据结构
在java日常开发中,经常需要使用各种数据结构,在涉及到数据结构之间如何优雅的转换时,我们可以借助google的guava提供的相关功能来优雅的实现.以下记录一些开发中经常需要使用数据结构的变形,以便 ...
- 注册表操作(VC_Win32)
注册表操作(VC_Win32) 数据类型 注册表的数据类型主要有以下四种:显示类型(在编辑器中) 数据类型 说明 REG_SZ 字符串 文本字符串REG_MULTI_SZ 多字符串 ...
- Javascript原型继承容易忽略的错误
编写Javascript的开发者都知道,JS虽然没有类(ES6添加了class语法),但是可以模拟出OOP语言的类和面向对象的概念,比如我们都知道的一句话,Javascript中处处是对象,而面向对象 ...
- java中的foreach用法及总结
增强for(part1:part2){part3}; part2中是一个数组对象,或者是带有泛性的集合. part1定义了一个局部变量,这个局部变量的类型与part2中的对象元素的类型是一致的. pa ...
- .vue文件在webstorm中es6语法报错解决方法
1 语法支持es6设置 Preferences > Languages & Frameworks > JavaScript 把 Javascript Language versio ...
- 小笔记:Timer定时间隔时间操作
小笔记:Timer定时间隔时间操作,后面有时间再补充和完善: public class TimingSvc { /// <summary> /// 定时器,执行定时任务 /// </ ...