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


Posted in PHP onMarch 12, 2015

本文实例讲述了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 相关文章推荐
建立文件交换功能的脚本(二)
Oct 09 PHP
PHP几个数学计算的内部函数学习整理
Aug 06 PHP
PHP JS Ip地址及域名格式检测代码
Sep 27 PHP
自编函数解决pathinfo()函数处理中文问题
Nov 03 PHP
php制作动态随机验证码
Feb 12 PHP
实例详解PHP中html word 互转的方法
Jan 28 PHP
php redis实现对200w用户的即时推送
Mar 04 PHP
yii2学习教程之5种内置行为类详解
Aug 03 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
Sep 02 PHP
PHP addAttribute()函数讲解
Feb 03 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
Dec 11 PHP
PHP code 验证码生成类定义和简单使用示例
May 27 PHP
标准PHP的AES加密算法类
Mar 12 #PHP
php接口数据加密、解密、验证签名
Mar 12 #PHP
php查询相似度最高的字符串的方法
Mar 12 #PHP
PHP实现通用alert函数的方法
Mar 11 #PHP
PHP获取ip对应地区和使用网络类型的方法
Mar 11 #PHP
javascript+php实现根据用户时区显示当地时间的方法
Mar 11 #PHP
PHP读取txt文本文件并分页显示的方法
Mar 11 #PHP
You might like
PHP把JPEG图片转换成Progressive JPEG的方法
2014/06/30 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
基于PHPexecl类生成复杂的报表表头示例
2016/10/14 PHP
浅谈PHP面向对象之访问者模式+组合模式
2017/05/22 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
jquery 表单进行客户端验证demo
2009/08/24 Javascript
JS 加入收藏夹的代码(主流浏览器通用)
2013/05/13 Javascript
extjs每个组件要设置唯一的ID否则会出错
2014/06/15 Javascript
js 加密压缩出现bug解决方案
2014/11/25 Javascript
javascript中的this详解
2014/12/08 Javascript
NodeJS学习笔记之(Url,QueryString,Path)模块
2015/01/13 NodeJs
js window对象属性和方法相关资料整理
2015/11/11 Javascript
JavaScript设计模式初探
2016/01/07 Javascript
如何高效率去掉js数组中的重复项
2016/04/12 Javascript
基于jquery实现即时检查格式是否正确的表单
2016/05/06 Javascript
实现一个简单的vue无限加载指令方法
2017/01/10 Javascript
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
2017/03/10 Javascript
详解nodejs的express如何自动生成项目框架
2017/07/12 NodeJs
基于canvas粒子系统的构建详解
2017/08/31 Javascript
JS 封装父页面子页面交互接口的实例代码
2019/06/25 Javascript
Vue快速实现通用表单验证功能
2019/12/05 Javascript
详细分析React 表单与事件
2020/07/08 Javascript
Javascript前端下载后台传来的文件流代码实例
2020/08/18 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
Python作用域用法实例详解
2016/03/15 Python
Pyinstaller将py打包成exe的实例
2018/03/31 Python
Python Web编程之WSGI协议简介
2018/07/18 Python
中邮全球便购:中国邮政速递物流
2017/03/04 全球购物
澳大利亚波西米亚风情网上商店:Czarina
2019/03/18 全球购物
生物制药自我鉴定
2014/01/25 职场文书
一年级学生评语大全
2014/04/21 职场文书
活动倡议书范文
2014/05/13 职场文书
班级课外活动总结
2014/07/09 职场文书
五一劳动节演讲稿
2014/09/12 职场文书
公安机关纪律作风整顿个人剖析材料材料
2014/10/10 职场文书
个人优缺点总结
2015/02/28 职场文书