查看: 1694|回复: 0

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

发表于 2018-3-31 08:00:03

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

案例:

index.php

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. $xmldom = new DOMDocument();
  4. $xmldom->load("demo2.xml");
  5. //查询学生信息
  6. $stus = $xmldom->getElementsByTagName("学生");
  7. for ($i=0;$i<$stus->length;$i++){
  8. $stu = $stus->item($i);
  9. getxmlnode($stu, "姓名");
  10. getxmlnode($stu, "年龄");
  11. getxmlnode($stu, "性别");
  12. getxmlnode($stu, "介绍");
  13. }
  14. function getxmlnode(&$stu,$tagname){
  15. echo $stuname = $stu->getElementsByTagName($tagname)->item(0)->nodeValue."<br/>";
  16. }
  17. //添加一个学生信息
  18. //addxml($xmldom);
  19. function addxml($xmldom){
  20. $root = $xmldom->getElementsByTagName("班级")->item(0);
  21. $ostus = $xmldom->createElement_x_x("学生");
  22. //添加属性
  23. $ostus->setAttribute("恋爱状况","热恋中");
  24. //$ostus->nodeValue="\r\n";
  25. $root->a($ostus);
  26. $ostu_name = $xmldom->createElement_x_x("姓名");
  27. $ostus->a($ostu_name);
  28. $ostu_name->nodeValue="小娜";
  29. $ostu_sex = $xmldom->createElement_x_x("性别");
  30. $ostus->a($ostu_sex);
  31. $ostu_sex->nodeValue="女";
  32. $ostu_age = $xmldom->createElement_x_x("年龄");
  33. $ostus->a($ostu_age);
  34. $ostu_age->nodeValue="23";
  35. $ostu_intro = $xmldom->createElement_x_x("介绍");
  36. $ostus->a($ostu_intro);
  37. $ostu_intro->nodeValue="高一美女";
  38. $xmldom->save("demo2.xml");
  39. }
  40. //删除一个学生信息
  41. //del_element($xmldom);
  42. function del_element($xmldom){
  43. $dstus = $xmldom->getElementsByTagName("学生");
  44. $laststu = $dstus->item($dstus->length-1);
  45. $laststu->parentNode->removeChild($laststu);
  46. }
  47. //修改一个学生信息
  48. //update_element($xmldom);
  49. function update_element($xmldom){
  50. $ustus = $xmldom->getElementsByTagName("学生");
  51. $ustu = $ustus->item(0);
  52. $ustu_age = $ustu->getElementsByTagName("年龄")->item(0);
  53. $ustu_age->nodeValue+=10;
  54. }
  55. //写会到文件中
  56. $xmldom->save("demo2.xml");
  57. ?>
复制代码

demo2.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <班级>
  3. </班级>
复制代码

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程序设计有所帮助。



回复

使用道具 举报