PHP遍历XML文档所有节点的方法

yipeiwu_com4年前PHP代码库

本文实例讲述了PHP遍历XML文档所有节点的方法。分享给大家供大家参考。具体实现方法如下:

1. contact.xml代码:

<contact id="43956">
   <personal>
     <name>
        <first>J</first>
        <middle>J</middle>
        <last>J</last>
     </name>
     <title>Manager</title>
     <employer>National</employer>
     <dob>1971-12-22</dob>
   </personal>
</contact>

2. php代码:

<?php
   function walk_tree ($node, $depth = 0) {
     for ($i = 0, $indent = ''; $i < $depth; $i++)
        $indent .= '   ';
     if ($node->type == XML_ELEMENT_NODE) {
        print ($indent . $node->tagname . "\n");
        $kids = $node->children ();
        $nkids = count ($kids);
        if ($nkids > 0) {
           $depth++;
           for ($i = 0; $i < $nkids; $i++)
             walk_tree ($kids[$i], $depth);
           $depth--;
        }
     }
   }
   $doc = xmldocfile ('contact.xml');
   print ("<pre>\n");
   walk_tree ($doc->root ());
   print ("</pre>\n");
?>

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

相关文章

PHP删除目录及目录下所有文件的方法详解

函数代码一:删除目录及目录下的所有文件复制代码 代码如下://循环删除目录和文件函数function delDirAndFile( $dirName ){if ( $handle = o...

PHP简单实现模拟登陆功能示例

本文实例讲述了PHP简单实现模拟登陆功能。分享给大家供大家参考,具体如下: 在不考虑验证码的情况一下,php实现模拟登陆,网上给的办法一般是采用curl来模拟实现,但是curl实现的是服...

PHP 开发者该知道的 5 个 Composer 小技巧

Composer 是新一代的PHP依赖管理工具。其介绍和基本用法可以看这篇《Composer PHP依赖管理的新时代》。本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带...

PHP pear安装配置教程

什么是PEAR? PEAR是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写。它是一个PHP扩展及应用的一个代码仓库,...

基于PHP7错误处理与异常处理方法(详解)

PHP7错误处理 PHP 7 改变了大多数错误的报告方式。不同于传统(PHP 5)的错误报告机制,现在大多数错误被作为 Error 异常抛出。 这种 Error 异常可以像 Except...