递归XML文档

Posted 独孤剑—宇枫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归XML文档相关的知识,希望对你有一定的参考价值。

 1 <?php
 2 //递归XML文档
 3 function getChilds($node){
 4     echo "<ul>";
 5     if($node->nodeType==3){
 6         echo "<li>".$node->nodeValue."</li>";   //取出节点的值
 7     }
 8     else
 9     {
10         echo "<li>".$node->nodeName."</li>";    //取出元素节点的名称
11         if($node->attributes->length>0) //节点的属性的个数大于0,表示此节点有属性
12         {
13             foreach ($node->attributes as $attr){
14                 echo "<li>".$attr->value."</li>";   //取出节点的值
15             }
16         }
17         foreach($node->childNodes as $child){   //便利循环子元素
18             getChilds($child);   //递归点
19         }
20     }
21     echo "</ul>";
22 }
23 $doc=new DOMDocument();
24 $doc->preserveWhiteSpace=false;  //不保护空格,就是导入XML的时候去掉空白字符
25 $doc->load(‘books.xml‘);
26 $root=$doc->documentElement;    //获得最顶层元素
27 getChilds($root);

 

以上是关于递归XML文档的主要内容,如果未能解决你的问题,请参考以下文章

在 Groovy 中将字符串 XML 片段转换为文档节点

递归XML文档

将 XSLT 转换的 XML 片段写入 XMLStreamWriter

LINQ to XML - 从文件加载 XML 片段

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途

R中的XML解析 - 子节点属性的递归体面