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 相关文章推荐
杏林同学录(六)
Oct 09 PHP
PHP中for循环语句的几种变型
Nov 26 PHP
用PHP 快速生成 Flash 动画的方法
Mar 06 PHP
php生成静态文件的多种方法分享
Jul 17 PHP
PHP递归调用的小技巧讲解
Feb 19 PHP
php启动时候提示PHP startup的解决方法
May 07 PHP
非常实用的php弹出错误警告函数扩展性强
Jan 17 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
Dec 15 PHP
PHP实践教程之过滤、验证、转义与密码详解
Jul 24 PHP
PHP单例模式与工厂模式详解
Aug 29 PHP
解决php写入数据库乱码的问题
Sep 17 PHP
laravel框架中间件简单使用方法示例
Jan 25 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 数组二分法查找函数代码
2010/02/16 PHP
php去除数组中重复数据
2014/11/18 PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
2015/05/09 PHP
Symfony2学习笔记之系统路由详解
2016/03/17 PHP
laravel-admin 在列表页添加自定义按钮的例子
2019/09/30 PHP
JavaScript中的Document文档对象
2008/01/16 Javascript
根据邮箱的域名跳转到相应的登录页面的代码
2012/02/27 Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
2014/06/06 Javascript
jQuery在ul中显示某个li索引号的方法
2015/03/17 Javascript
JQuery插件Quicksand实现超炫的动画洗牌效果
2015/05/03 Javascript
详解AngularJs HTTP响应拦截器实现登陆、权限校验
2017/04/11 Javascript
基于Vue实例生命周期(全面解析)
2017/08/16 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
layui弹出层按钮提交iframe表单的方法
2018/08/20 Javascript
深入浅出 Vue 系列 -- 数据劫持实现原理
2019/04/23 Javascript
Vue 自定义指令实现一键 Copy功能
2019/09/16 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
centos系统升级python 2.7.3
2014/07/03 Python
利用Python的Django框架中的ORM建立查询API
2015/04/20 Python
Python网络编程之使用TCP方式传输文件操作示例
2019/11/01 Python
Python实现井字棋小游戏
2020/03/09 Python
增大python字体的方法步骤
2020/07/05 Python
Python使用pickle进行序列化和反序列化的示例代码
2020/09/22 Python
python两种获取剪贴板内容的方法
2020/11/06 Python
使用HTML5 Canvas API控制字体的显示与渲染的方法
2016/03/24 HTML / CSS
比驿:全球酒店比价网
2018/06/20 全球购物
SQL面试题
2013/12/09 面试题
《二泉映月》教学反思
2014/04/15 职场文书
材料成型及控制工程专业求职信
2014/06/19 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
2014年房地产销售工作总结
2014/12/01 职场文书
2014年个人技术工作总结
2014/12/08 职场文书
新闻发布会新闻稿
2015/07/17 职场文书
Canvas跟随鼠标炫彩小球的实现
2021/04/11 Javascript
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang