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的一个完整SMTP类(解决邮件服务器需要验证时的问题)
Oct 09 PHP
PHP调用三种数据库的方法(3)
Oct 09 PHP
用header 发送cookie的php代码
Mar 16 PHP
php将gd生成的图片缓存到memcache的小例子
Jun 05 PHP
hadoop常见错误以及处理方法详解
Jun 19 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
php自定义分页类完整实例
Dec 25 PHP
php自定义函数实现二维数组排序功能
Jul 20 PHP
ecshop适应在PHP7的修改方法解决报错的实现
Nov 01 PHP
php输出含有“#”字符串的方法
Jan 18 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
May 24 PHP
php数组和链表的区别总结
Sep 20 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
第七节--类的静态成员
2006/11/16 PHP
PHP SQLite类
2009/05/07 PHP
PHP错误Cannot use object of type stdClass as array in错误的解决办法
2014/06/12 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
php计算指定目录下文件占用空间的方法
2015/03/13 PHP
iOS自定义提示弹出框实现类似UIAlertView的效果
2016/11/16 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
2019/04/23 PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
2019/06/12 PHP
Javascript的一种模块模式
2010/09/08 Javascript
父节点获取子节点的字符串示例代码
2014/02/26 Javascript
html文档中的location对象属性理解及常见的用法
2014/08/13 Javascript
第一篇初识bootstrap
2016/06/21 Javascript
详谈jQuery中的一些正则匹配表达式
2017/03/08 Javascript
解决ztree搜索中多级菜单展示不全问题
2017/07/05 Javascript
Vue项目中配置pug解析支持
2019/05/10 Javascript
vue中nextTick用法实例
2019/09/11 Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
2020/04/20 Javascript
零基础写python爬虫之抓取糗事百科代码分享
2014/11/06 Python
在Ubuntu系统下安装使用Python的GUI工具wxPython
2016/02/18 Python
python计算导数并绘图的实例
2020/02/29 Python
python3 logging日志封装实例
2020/04/08 Python
Python小白学习爬虫常用请求报头
2020/06/03 Python
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
美国体育用品在线:Modell’s Sporting Goods
2018/06/07 全球购物
澳洲的UGG雪地靴超级市场:Uggs.com.au
2020/04/06 全球购物
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
垃圾回收的优点和原理
2014/05/16 面试题
通用求职信范文模板分享
2013/12/27 职场文书
物流合作计划书
2014/01/10 职场文书
企业年会主持词
2014/03/27 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
四风自我剖析材料
2014/09/30 职场文书
考研导师推荐信范文
2015/03/27 职场文书
2015年幼儿园保育员工作总结
2015/04/23 职场文书
小学中队委竞选稿
2015/11/20 职场文书
漫画《催眠麦克风-Dawn Of Divisions》第二卷PV公开
2022/04/05 日漫