php 读写xml 修改xml
需要修改的xml
<?xml version="1.0"?>
<config>
<administration>
<adminuser>
<user>
<id type="autoinc">1</id>
<name type="username" min="3" max="20">admin</name>
<passwdmd5 type="passwd" min="4" max="10">21232f297a57a5a743894a0e4a801fc3</passwdmd5>
<purview type="purview">super</purview>
</user>
</adminuser>
</administration>
</config>
用php修改xml的节点
$doc = new DOMDocument;
$doc->load('test.xml');
$users = $doc->documentElement->getElementsByTagName('user');
foreach($users as $user)
{
$purviews = $user->getElementsByTagName('purview');
$purview = $purviews->item(0); $tmpNode = $purview->cloneNode();
$tmpNode->nodeValue = "xxx";
$tmpNode = $purview->parentNode->appendChild($tmpNode);
$purview->parentNode->replaceChild($tmpNode,$purview);
$doc->save("test1.xml");
}
个人尝试用的simplexml 也可以修改,代码如下!,我写的较为繁琐了,不应该这样switch判断,如果有几十张 要写几十个case语句,极为不方便!
要修改此处要从 处理之前!修改xml之前就要解决!用上面的方法可以用foreach循环!应该较为方便!
private function write_xml($img_num) {
//这里应该加判断xml文件是否存在,不存在就新建一个!出于给客户就已经带着xml文件,这里就不再创建!
$xml = simplexml_load_file(__IMG_CONFIG__);
$slider = $xml->slider; $indexad = $xml->indexad;
switch($img_num) {
case 'img_1':
$slider->slider_1 = $img_num . '.jpg';
break;
case 'img_2':
$slider->slider_2 = $img_num . '.jpg';
break;
case 'img_3':
$slider->slider_3 = $img_num . '.jpg';
break;
case 'img_4':
$indexad->left = $img_num . '.jpg';
break;
case 'img_5':
$indexad->right = $img_num . '.jpg';
}
file_put_contents(__IMG_CONFIG__, $xml->asXML());
}
php 读写xml 修改xml的更多相关文章
- 修改XML指定标签的内容
修改Xml指定标签内容(我这是去掉指定标签内容的空格) 其实就是个很简单的方法,需要的盆友直接拿走. test.xml <?xml version="1.0" encodin ...
- [SHELL] 修改xml的内容
解析和修改xml用python比较方便,但如果不方便使用python,可以用sed命令简单替换 例如,欲替换下面一行中的端口号的值: <param name="ftpPort" ...
- DOS 批处理 修改xml文件
之前对批处理和dos只停留在cd ping ipconfig水平,我以为改个文件应该很简单吧,把文件读出来做个替换再写回去不就欧了,百度个例子改改,那还不是分分钟的事,哪知道事实比想的要复杂的多. 我 ...
- 06_XML的写入_dom4j添加、删除、修改Xml文件内容
[工程截图] [person.xml]准备一个xml文件 <?xml version="1.0" encoding="UTF-8"?> <st ...
- jQuery append xmlNode 修改 xml 内容
jQuery append xmlNode 修改 xml 内容 http://blog.darkthread.net/blogs/darkthreadtw/archive/2009/04/29/jqu ...
- Dom4j修改xml文档
1. 写出内容到xml文档 XMLWriter writer = new XMLWriter(OutputStream, OutputForamt) wirter.write(Document); 2 ...
- webservice04#对象与xml转换-jaxb#Stax解析xml#新建修改xml
1,Student类 package com.yangw.xml; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement / ...
- Dom4j修改xml文档引入
前面介绍了如何解析xnl文档的内容,这里对修改xml展开讨论. 一.首先看一下,写出内容到xml文档的主要代码: XMLWriter writer = new XMLWriter(OutputStre ...
- C# xml 读xml、写xml、Xpath、Xml to Linq、xml添加节点 xml修改节点
#region XDocument //创建XDocument XDocument xdoc2 = new XDocument(); XElement xel1= new XElement(" ...
随机推荐
- Codeforces Round #310 (Div. 1) B. Case of Fugitive set
B. Case of Fugitive Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/555/p ...
- JSP中Session的使用
JSP session使用方法 <%@page contentType="text/html;charset=GB2312"%><html> <he ...
- JavaScript中事件捕获(Event capturing)-------------->由外向内,事件冒泡(Event bubblin)---------->由内向外
addEventListener("click", function() {}, useCapture:false); <!DOCTYPE html> <html ...
- TP复习17
三大自动,自动创建,自动验证,自动完成
- 深入了解android平台的jni(二)
Android.mk是Android提供的一种makefile文件,用来指定诸如编译生成so库名.引用的头文件目录.需要编译的.c/.cpp文件和.a静态库文件等.要掌握jni,就必须熟练掌握Andr ...
- NHibernate教程
NHibernate教程 一.NHibernate简介 在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦.浪费时间的.NHibernate是一个面向.Net环境的对象/关系数据库 ...
- ubuntu14.04编译mono源码(有坑...)
从github上下载了mono的源码,然后打算编译了.百度了一下教程,我去...居然没有教程.换bing搜索一下,我去...还是没有.关键字换一下:how to build mono on linu ...
- BootStrap2学习日记18---提示消息
代码: <div class="alert alert-block" id="alert"> <a href="#" cl ...
- Linux常用命令速查备忘
Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown ...
- Win Mingw-64获取
首先得了解下三种异常不同实现: SJLJ: slower but available for every architecture. SEH: fastest but limited to 64-bi ...