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&amp;java(一)
Oct 09 PHP
php实现用户在线时间统计详解
Oct 08 PHP
浅析php变量作用域的一些问题
Aug 08 PHP
php中switch与ifelse的效率区别及适用情况分析
Feb 12 PHP
利用“多说”制作留言板、评论系统
Jul 14 PHP
CentOS下搭建PHP环境与WordPress博客程序的全流程总结
May 07 PHP
thinkphp框架下404页面设置 仅三步
May 14 PHP
PHP编写的图片验证码类文件分享
Jun 06 PHP
php单链表实现代码分享
Jul 04 PHP
php-msf源码详解
Dec 25 PHP
PHP实现数组根据某个单元字段排序操作示例
Aug 01 PHP
PHP+MySQL实现在线测试答题实例
Jan 02 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/10/09 PHP
gd库图片下载类实现下载网页所有图片的php代码
2012/08/20 PHP
分享下php5类中三种数据类型的区别
2015/01/26 PHP
PHP实现简单实用的验证码类
2015/07/29 PHP
不错的asp中显示新闻的功能
2006/10/13 Javascript
ExtJS GTGrid 简单用户管理
2009/07/01 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
JS字符串截取函数实例
2013/12/27 Javascript
Javascript和Java获取各种form表单信息的简单实例
2014/02/14 Javascript
JS+CSS实现仿新浪微博搜索框的方法
2015/02/24 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
2015/11/25 Javascript
jQuery 1.9.1源码分析系列(十三)之位置大小操作
2015/12/02 Javascript
JS中JSON对象和String之间的互转及处理技巧
2016/04/06 Javascript
vue2.0项目中使用Ueditor富文本编辑器示例代码
2017/08/14 Javascript
node通过express搭建自己的服务器
2017/09/30 Javascript
使用express搭建一个简单的查询服务器的方法
2018/02/09 Javascript
小程序实现左右来回滚动字幕效果
2018/12/28 Javascript
JS使用cookie保存用户登录信息操作示例
2019/05/30 Javascript
layui实现数据表格隐藏列的示例
2019/10/25 Javascript
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
python列出目录下指定文件与子目录的方法
2015/07/03 Python
Python中规范定义命名空间的一些建议
2016/06/04 Python
Python的装饰器用法学习笔记
2016/06/24 Python
Python基于opencv的图像压缩算法实例分析
2018/05/03 Python
PyTorch线性回归和逻辑回归实战示例
2018/05/22 Python
Mac下Anaconda的安装和使用教程
2018/11/29 Python
Keras官方中文文档:性能评估Metrices详解
2020/06/15 Python
教师产假请假条
2014/04/10 职场文书
团委书记的竞聘演讲稿
2014/04/24 职场文书
群众路线教育实践活动的心得体会
2014/09/03 职场文书
乡领导班子四风问题对照检查材料
2014/09/25 职场文书
师德承诺书
2015/01/20 职场文书
2015新学期家长寄语
2015/02/26 职场文书
反邪教教育心得体会
2016/01/15 职场文书
七年级作文之环保作文
2019/10/17 职场文书
Golang获取List列表元素的四种方式
2022/04/20 Golang