php递归遍历xml

来源:互联网 发布:linux怎么安装vmtools 编辑:程序博客网 时间:2024/06/06 04:26

nodeType的值:

如果是1,则为元素节点

如果是2,则为属性

如果是3,这位值节点

如果是9,则为根节点

值节点的名称是“#text”,根节点的名称是“#document”

<?phpecho '<meta http-equiv="content-type" content="text/html; charset=utf-8">';//递归xml文档function getChilds($node){    echo "<ul>";        if($node->nodeType == 3){            echo "<li>" . $node->nodeValue . "</li>";        } else {            echo "<li>" . $node->nodeName . "</li>";            if($node->attributes->length > 0){                //此节点有属性                foreach ($node->attributes as $attr){                    echo "<li>" . $attr->value . "</li>";                }            }            //遍历循环子元素            foreach ($node->childNodes as $child) {                getChilds($child);            }        }    echo "</ul>";}$doc = new DOMDocument();//不保护空格,就是导入xml的时候去掉空白字符$doc->preserveWhiteSpace = false;$doc->load('books.xml');//获得最顶层元素$root = $doc->documentElement;getChilds($root);


原创粉丝点击