PHP对XML内容进行修改和删除实例代码


Posted in PHP onOctober 26, 2016

本文主要介绍的是PHP对XML内容进行修改和删除的方法,下面话不多说,我们来看实例

原理图如下

PHP对XML内容进行修改和删除实例代码

示例代码

example.xml

<?xml version="1.0" encoding="utf-8"?>
<root>
 <book id="1">
  <title>title1</title>
 </book>
 <book id="2">
  <title>title2</title>
 </book>
 <book id="3">
  <title>title3</title>
 </book>
 <book id="4">
  <title>title4</title>
 </book>
 <book id="5">
  <title>title5</title>
 </book>
</root>

首先遍历一下该xml文档

<?php $doc = new DOMDocument(); $doc->load('example.xml'); $books = $doc -> getElementsByTagName("book"); //遍历 foreach ($books as $book) { echo $book->getAttribute('id')."-"; echo $book->getElementsByTagName("title")->item(0)->nodeValue; echo "<br>"; }

运行结果为:

1-title1 
2-title2 
3-title3 
4-title4 
5-title5

修改:

<?php

 $doc = new DOMDocument();
 $doc->load('example.xml');

 $books = $doc -> getElementsByTagName("book");
 //遍历
 foreach ($books as $book) {
  //将id=3的title设置为33333
  if($book->getAttribute('id')==3){
   echo $book->getAttribute('id')."-";
   echo $book->getElementsByTagName("title")->item(0)->nodeValue="33333";
   echo "<br>";
  }
 }
 //对文件做修改后,一定要记得重新sava一下,才能修改掉原文件
 $doc -> save('example.xml');

修改之后为:

<?xml version="1.0" encoding="utf-8"?>
<root>
 <book id="1">
  <title>title1</title>
 </book>
 <book id="2">
  <title>title2</title>
 </book>
 <book id="3">
  <title>33333</title>
 </book>
 <book id="4">
  <title>title4</title>
 </book>
 <book id="5">
  <title>title5</title>
 </book>
</root>

删除操作:

<?php

 $doc = new DOMDocument();
 $doc->load('example.xml');

 $root = $doc -> documentElement;//根标签 
 $books = $doc -> getElementsByTagName("book");
 //遍历
 foreach ($books as $book) {
  //将id=4的删除
  if($book->getAttribute('id')==4){
   $root->removeChild($book);
  }
 }
 //对文件做修改后,一定要记得重新sava一下,才能修改掉原文件
 $doc -> save('example.xml');

删除后的结果为:

<?xml version="1.0" encoding="utf-8"?>
<root>
 <book id="1">
  <title>title1</title>
 </book>
 <book id="2">
  <title>title2</title>
 </book>
 <book id="3">
  <title>33333</title>
 </book>

 <book id="5">
  <title>title5</title>
 </book>
</root>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

PHP 相关文章推荐
PHP生成静态页
Nov 25 PHP
PHP 实用代码收集
Jan 22 PHP
批量获取memcache值并按key的顺序返回的实现代码
Jun 14 PHP
php实现以只读方式打开文件的方法
Mar 16 PHP
php 问卷调查结果统计
Oct 08 PHP
Smarty模板变量调节器用法分析
May 23 PHP
学习PHP Cookie处理函数
Aug 09 PHP
PHP+Ajax实现的博客文章添加类别功能示例
Mar 29 PHP
PHP+百度AI OCR文字识别实现了图片的文字识别功能
May 08 PHP
如何让PHP编码更加好看利于阅读
May 12 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
May 02 PHP
PHP常量及变量区别原理详解
Aug 14 PHP
php array_merge_recursive 数组合并
Oct 26 #PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 #PHP
php array_map使用自定义的函数处理数组中的每个值
Oct 26 #PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 #PHP
centos+php+coreseek+sphinx+mysql之一coreseek安装篇
Oct 25 #PHP
在Thinkphp中使用ajax实现无刷新分页的方法
Oct 25 #PHP
PHP上传Excel文件导入数据到MySQL数据库示例
Oct 25 #PHP
You might like
php in_array 函数使用说明与in_array需要注意的地方说明
2010/04/13 PHP
php 操作符与控制结构
2012/03/07 PHP
php中利用explode函数分割字符串到数组
2014/02/08 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
2014/06/09 PHP
php简单截取字符串代码示例
2016/10/19 PHP
Yii实现微信公众号场景二维码的方法实例
2020/08/30 PHP
js获取html参数及向swf传递参数应用介绍
2013/02/18 Javascript
JS完整获取IE浏览器信息包括类型、版本、语言等等
2014/05/22 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
html的DOM中Event对象onabort事件用法实例
2015/01/21 Javascript
js css实现垂直方向自适应的三角提示菜单
2016/06/26 Javascript
购物车前端开发(jQuery和bootstrap3)
2016/08/27 Javascript
Bootstrap源码解读排版(1)
2016/12/23 Javascript
完美解决node.js中使用https请求报CERT_UNTRUSTED的问题
2017/01/08 Javascript
原生javascript移动端滑动banner效果
2017/03/10 Javascript
详解基于webpack和vue.js搭建开发环境
2017/04/05 Javascript
jQuery EasyUI之验证框validatebox实例详解
2017/04/10 jQuery
关于JavaScript中的this指向问题总结篇
2017/07/23 Javascript
轻松解决JavaScript定时器越走越快的问题
2019/05/13 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
[02:48]DOTA2超级联赛专访海涛:你们的选择没有错
2013/06/07 DOTA
[00:32]2018DOTA2亚洲邀请赛OpTic出场
2018/04/03 DOTA
Appium+python自动化怎么查看程序所占端口号和IP
2019/06/14 Python
python中通过selenium简单操作及元素定位知识点总结
2019/09/10 Python
在python3.64中安装pyinstaller库的方法步骤
2020/06/02 Python
python实现企业微信定时发送文本消息的实例代码
2020/11/25 Python
新员工培训个人的自我评价
2013/10/09 职场文书
表彰先进集体通报
2014/01/12 职场文书
保护环境建议书
2014/03/12 职场文书
幼儿园小班评语大全
2014/04/17 职场文书
广播体操比赛口号
2014/06/10 职场文书
红色旅游心得体会
2014/09/03 职场文书
四风问题自我剖析材料
2014/10/07 职场文书
2015年宣传部个人工作总结
2015/05/14 职场文书
任命书格式模板
2015/09/22 职场文书
《实心球》教学反思
2016/02/23 职场文书