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学习之 认清变量的作用范围
Jan 26 PHP
与文件上传有关的php配置参数总结
Jun 14 PHP
限制ckeditor上传图片文件大小的方法
Nov 15 PHP
php实现过滤表单提交中html标签的方法
Oct 17 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
PHP连接MYSQL数据库实例代码
Jan 20 PHP
php实现转换html格式为文本格式的方法
May 16 PHP
php多线程并发实现方法
Sep 30 PHP
php实现通过soap调用.Net的WebService asmx文件
Feb 27 PHP
PHP图片水印类的封装
Jul 06 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 PHP
laravel-admin 中列表筛选方法
Oct 03 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函数之子字符串替换&amp;#65279; str_replace
2011/03/23 PHP
深入php self与$this的详解
2013/06/08 PHP
php天翼开放平台短信发送接口实现方法
2014/12/22 PHP
php编程实现简单的网页版计算器功能示例
2017/04/26 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
7个Javascript地图脚本整理
2009/10/20 Javascript
JavaScript 设计模式 安全沙箱模式
2010/09/24 Javascript
js简易namespace管理器 实例代码
2013/06/21 Javascript
JS实现切换标签页效果实例代码
2013/11/01 Javascript
js中replace的用法总结
2013/12/27 Javascript
浏览器缩放检测的js代码
2014/09/28 Javascript
24款热门实用的jQuery插件推荐
2014/12/24 Javascript
JavaScript 事件对象介绍
2015/04/13 Javascript
ECMA5数组的新增方法有哪些及forEach()模仿实现
2015/11/03 Javascript
javascript移动开发中touch触摸事件详解
2016/03/18 Javascript
AngularJs表单校验功能实例代码
2017/02/09 Javascript
基于JavaScript实现轮播图原理及示例
2020/04/10 Javascript
canvas实现图片根据滑块放大缩小效果
2017/02/24 Javascript
微信小程序 判断手机号的实现代码
2017/04/19 Javascript
react-native android状态栏的实现
2018/06/15 Javascript
微信小程序实现弹出层效果
2020/05/26 Javascript
vue把输入框的内容添加到页面的实例讲解
2019/11/11 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
微信小程序实现日历签到
2020/09/21 Javascript
[03:59]第二届DOTA2亚洲邀请赛选手传记-VGJ.rOtk
2017/04/03 DOTA
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
2020/04/07 Python
HTML5新增元素如何兼容旧浏览器有哪些方法
2014/05/09 HTML / CSS
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
viagogo英国票务平台:演唱会、体育比赛、戏剧门票
2017/03/24 全球购物
美国女士时尚珠宝及配饰购物网站:Icing
2018/07/02 全球购物
英国蛋糕装饰用品一站式商店:Craft Company
2019/03/18 全球购物
MIXIT官网:俄罗斯最大的化妆品公司之一
2020/01/25 全球购物
大二法学专业职业生涯规划范文
2014/02/12 职场文书
迎国庆演讲稿
2014/09/15 职场文书
2015年上半年党建工作总结
2015/03/30 职场文书
2016关于军训的心得体会
2016/01/11 职场文书