当前位置:Gxlcms > PHP教程 > 解读PHPDOMDocument在解析XML文件中的作用_PHP教程

解读PHPDOMDocument在解析XML文件中的作用_PHP教程

时间:2021-07-01 10:21:17 帮助过:39人阅读

在使用

关于用到的XML文件还以“Php Xml处理之simplexml使用方法浅谈”一文中的XML为例,文件名为:me.xml。代码如下:

PHP XML处理XML代码

  1. < ?xml version="1.0" encoding="utf-8"?>
  2. < phplamp>
  3. < post>
  4. < title id="1">PHP XML处理介绍一< /title>
  5. < details>详细内容一< /details>
  6. < /post>
  7. < post>
  8. < title id="2">PHP XML处理介绍二< /title>
  9. < details>详细内容二< /details>
  10. < /post>
  11. < post>
  12. < title id="3">PHP XML处理介绍三< /title>
  13. < details>详细内容三< /details>
  14. < /post>
  15. < /phplamp>

然后就需要用PHP DOMDocument去处理这个文件,将XML文件中的任何元素都解析出来。代码如下,里面有注释。

PHP DOMDocument解析XML文件的代码

  1. < ?php
  2. // 首先要建一个DOMDocument对象
  3. $xml = new DOMDocument();
  4. // 加载Xml文件
  5. $xml->load("me.xml");
  6. // 获取所有的post标签
  7. $postDom = $xml->
    getElementsByTagName("post");
  8. // 循环遍历post标签
  9. foreach($postDom as $post){
  10. // 获取Title标签Node
  11. $title = $post->
    getElementsByTagName("title");
  12. /**
  13. * 要获取Title标签的Id属性要分两部走
  14. * 1. 获取title中所有属性的
    列表也就是$title-
    >item(0)->attributes
  15. * 2. 获取title中id的属性,
    因为其在第一位所以用item(0)
  16. *
  17. * 小提示:
  18. * 若取属性的值可以用item(*)->nodeValue
  19. * 若取属性的标签可以用item(*)->nodeName
  20. * 若取属性的类型可以用item(*)->nodeType
  21. */
  22. echo "Id: " . $title->item(0)->
    attributes->item(0)->nodeValue . "< br />";
  23. echo "Title: " . $title->
    item(0)->nodeValue . "< br />";
  24. echo "Details: " . $post->
    getElementsByTagName("details")->i
    tem(0)-
    >nodeValue . "< br />< br />";
  25. }
  26. ?>

这只是一种方法,PHP DOMDocument相当强大,还有更多的解析方法与策略,等待您去发掘。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446191.htmlTechArticle在使用 关于用到的XML文件还以Php Xml处理之simplexml使用方法浅谈一文中的XML为例,文件名为:me.xml。代码如下: PHP XML处理XML代码 ?xml versi...

人气教程排行