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

所属分类: 网络编程 / PHP编程 阅读数: 1459
收藏 0 赞 0 分享

本文实例讲述了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"?>
<班级>
</班级>

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML
http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

更多精彩内容其他人还在看

PHP Ajax实现页面无刷新发表评论

PHP Ajax实现页面无刷新发表评论
收藏 0 赞 0 分享

windows下PHP APACHE MYSQ完整配置

windows下PHP APACHE MYSQ完整配置
收藏 0 赞 0 分享

Ajax PHP分页演示

Ajax PHP分页演示
收藏 0 赞 0 分享

Smarty结合Ajax实现无刷新留言本实例

Smarty结合Ajax实现无刷新留言本实例
收藏 0 赞 0 分享

PHP 和 MySQL 开发的 8 个技巧

PHP 和 MySQL 开发的 8 个技巧
收藏 0 赞 0 分享

一个用php实现的获取URL信息的类

一个用php实现的获取URL信息的类
收藏 0 赞 0 分享

一个PHP操作Access类(PHP+ODBC+Access)

一个PHP操作Access类(PHP+ODBC+Access)
收藏 0 赞 0 分享

php你的验证码安全码?

php你的验证码安全码?
收藏 0 赞 0 分享

PHP无限分类的类

这段时间在写一个部门权限系统,需要用到无限分类技术,找了很多关于分类的代码.逐个收藏起来
收藏 0 赞 0 分享

phpwind中的数据库操作类

phpwind中的数据库操作类
收藏 0 赞 0 分享
查看更多