PHP实现对xml的增删改查操作案例分析


Posted in PHP onMay 19, 2017

本文实例讲述了PHP实现对xml的增删改查操作。分享给大家供大家参考,具体如下:

案例:

index.php

<?php
header("content-type:text/html;charset=utf-8");
$xmldom = new DOMDocument();
$xmldom->load("demo2.xml");
//查询学生信息
$stus = $xmldom->getElementsByTagName("学生");
for ($i=0;$i<$stus->length;$i++){
  $stu = $stus->item($i);
  getxmlnode($stu, "姓名");
  getxmlnode($stu, "年龄");
  getxmlnode($stu, "性别");
  getxmlnode($stu, "介绍");
}
function getxmlnode(&$stu,$tagname){
  echo $stuname = $stu->getElementsByTagName($tagname)->item(0)->nodeValue."<br/>";
}
//添加一个学生信息
//addxml($xmldom);
function addxml($xmldom){
  $root = $xmldom->getElementsByTagName("班级")->item(0);
  $ostus = $xmldom->createElement_x_x("学生");
  //添加属性
  $ostus->setAttribute("恋爱状况","热恋中");
  //$ostus->nodeValue="\r\n";
  $root->a($ostus);
  $ostu_name = $xmldom->createElement_x_x("姓名");
  $ostus->a($ostu_name);
  $ostu_name->nodeValue="小娜";
  $ostu_sex = $xmldom->createElement_x_x("性别");
  $ostus->a($ostu_sex);
  $ostu_sex->nodeValue="女";
  $ostu_age = $xmldom->createElement_x_x("年龄");
  $ostus->a($ostu_age);
  $ostu_age->nodeValue="23";
  $ostu_intro = $xmldom->createElement_x_x("介绍");
  $ostus->a($ostu_intro);
  $ostu_intro->nodeValue="高一美女";
  $xmldom->save("demo2.xml");
}
//删除一个学生信息
//del_element($xmldom);
function del_element($xmldom){
  $dstus = $xmldom->getElementsByTagName("学生");
  $laststu = $dstus->item($dstus->length-1);
  $laststu->parentNode->removeChild($laststu);
}
//修改一个学生信息
//update_element($xmldom);
function update_element($xmldom){
  $ustus = $xmldom->getElementsByTagName("学生");
  $ustu = $ustus->item(0);
  $ustu_age = $ustu->getElementsByTagName("年龄")->item(0);
  $ustu_age->nodeValue+=10;
}
//写会到文件中
$xmldom->save("demo2.xml");
?>

demo2.xml

<?xml version="1.0" encoding="UTF-8"?>
<班级>
</班级>
PHP 相关文章推荐
用缓存实现静态页面的测试
Dec 06 PHP
function.inc.php超越php
Dec 09 PHP
dedecms模板标签代码官方参考
Mar 17 PHP
如何在PHP程序中防止盗链
Apr 09 PHP
PHP获取网卡地址的代码
Apr 09 PHP
PHP Array交叉表实现代码
Aug 05 PHP
ThinkPHP与PHPExcel冲突解决方法
Aug 08 PHP
检查php文件中是否含有bom的函数
May 31 PHP
浅析使用Turck-mmcache编译来加速、优化PHP代码
Jun 20 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
Jul 25 PHP
php生成二维码
Aug 10 PHP
PHP读取文件内容的五种方式
Dec 28 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
May 19 #PHP
php简单处理XML数据的方法示例
May 19 #PHP
PHP jQuery+Ajax结合写批量删除功能
May 19 #PHP
php对xml文件的增删改查操作实现方法分析
May 19 #PHP
PHP基于自增数据如何生成不重复的随机数示例
May 19 #PHP
Yii2设置默认控制器的两种方法
May 19 #PHP
php将html转为图片的实现方法
May 19 #PHP
You might like
php mysql数据库操作类
2008/06/04 PHP
关于使用key/value数据库redis和TTSERVER的心得体会
2013/06/28 PHP
PHP变量内存分配问题记录整理
2013/11/27 PHP
php判断一个数组是否为有序的方法
2015/03/27 PHP
Laravel框架中缓存的使用方法分析
2019/09/06 PHP
HTML-CSS群中单选引发的“事件”
2007/03/05 Javascript
Javascript 对象的解释
2008/11/24 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
js实现ctrl+v粘贴上传图片(兼容chrome、firefox、ie11)
2016/03/09 Javascript
JavaScript:Array类型全面解析
2016/05/19 Javascript
VueJs路由跳转——vue-router的使用详解
2017/01/10 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
vue设计一个倒计时秒杀的组件详解
2019/04/06 Javascript
[45:52]2018DOTA2亚洲邀请赛 4.1小组赛 A组加赛 LGD vs Liquid
2018/04/02 DOTA
[42:11]TNC vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[50:22]完美盛典-2018年度红毯走秀
2018/12/16 DOTA
Python中每次处理一个字符的5种方法
2015/05/21 Python
python中函数传参详解
2016/07/03 Python
关于Python如何避免循环导入问题详解
2017/09/14 Python
python列表推导式入门学习解析
2019/12/02 Python
Pytorch实现的手写数字mnist识别功能完整示例
2019/12/13 Python
Python多线程多进程实例对比解析
2020/03/12 Python
python 服务器运行代码报错ModuleNotFoundError的解决办法
2020/09/16 Python
python tkinter实现连连看游戏
2020/11/16 Python
GANT葡萄牙官方商店:拥有美国运动服传统的生活方式品牌
2018/10/18 全球购物
八项规定整改措施
2014/02/12 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
政治学求职信
2014/06/03 职场文书
学校标语大全
2014/06/19 职场文书
法语专业求职信
2014/07/20 职场文书
校园安全主题班会
2015/08/12 职场文书
创业计划书之旅游网站
2019/09/06 职场文书
Python控制台输出俄罗斯方块的方法实例
2021/04/17 Python
Python中Schedule模块使用详解 周期任务神器
2022/04/19 Python
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL
springboot实现string转json json里面带数组
2022/06/16 Java/Android