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遍历数组的方法分享
Mar 22 PHP
ThinkPHP中的常用查询语言汇总
Aug 22 PHP
PHP @ at 记号的作用示例介绍
Oct 10 PHP
php获取数组元素中头一个数组元素值的实现方法
Dec 20 PHP
PHP中$this和$that指针使用实例
Jan 06 PHP
php制作文本式留言板
Mar 18 PHP
一波PHP中cURL库的常见用法代码示例
May 06 PHP
smarty中改进truncate使其支持中文的方法
May 30 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
Oct 28 PHP
Zend Framework框架实现类似Google搜索分页效果
Nov 25 PHP
详解PHP PDO简单教程
May 28 PHP
PHP使用QR Code生成二维码实例
Jul 07 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
Re:从零开始的异世界生活 第2季 开播啦
2020/07/24 日漫
YII CLinkPager分页类扩展增加显示共多少页
2016/01/29 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
2018/03/15 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
JavaScript 特殊字符
2007/04/05 Javascript
提高javascript效率 一次判断,而不要次次判断
2012/03/30 Javascript
jQuery插件-jRating评分插件源码分析及使用方法
2012/12/28 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
js图片轮播手动切换效果
2015/11/10 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
微信小程序实战之运维小项目
2017/01/17 Javascript
ES6学习笔记之正则表达式和字符串正则方法分析
2017/04/25 Javascript
js实现水平滚动菜单导航
2017/07/21 Javascript
Angular利用内容投射向组件输入ngForOf模板的方法
2018/03/05 Javascript
Vue服务端渲染实践之Web应用首屏耗时最优化方案
2019/03/22 Javascript
vue-resource post数据时碰到Django csrf问题的解决
2020/03/13 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
three.js 利用uv和ThreeBSP制作一个快递柜功能
2020/08/18 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
2020/11/11 Javascript
Python判断文件和文件夹是否存在的方法
2015/05/21 Python
python爬取亚马逊书籍信息代码分享
2017/12/09 Python
Django密码存储策略分析
2020/01/09 Python
python如何实现单链表的反转
2020/02/10 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
Windows+Anaconda3+PyTorch+PyCharm的安装教程图文详解
2020/04/03 Python
Python常用base64 md5 aes des crc32加密解密方法汇总
2020/11/06 Python
使用Python获取爱奇艺电视剧弹幕数据的示例代码
2021/01/12 Python
美国LOGO设计公司:The Logo Company
2018/07/16 全球购物
Miller Harris官网:英国小众香水品牌
2020/09/24 全球购物
汽车促销活动方案
2014/03/31 职场文书
2014年班级工作总结
2014/11/14 职场文书
2014年底工作总结
2014/12/15 职场文书
2014年学校禁毒工作总结
2014/12/23 职场文书
辞职信范文大全
2015/03/02 职场文书
导游词之宿迁乾隆行宫
2019/10/15 职场文书
react中useState使用:如何实现在当前表格直接更改数据
2022/08/05 Javascript