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 相关文章推荐
在apache下限制每个虚拟主机的并发数!!!!
Oct 09 PHP
使用PHP生成二维码的两种方法(带logo图像)
Mar 14 PHP
PHP中nowdoc和heredoc使用需要注意的一点
Mar 21 PHP
php实现读取手机客户端浏览器的类
Jan 09 PHP
PHP实现获取客户端IP并获取IP信息
Mar 17 PHP
php实现微信发红包
Dec 05 PHP
WordPress中用于创建以及获取侧边栏的PHP函数讲解
Dec 29 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
Dec 31 PHP
Zend Framework实现将session存储在memcache中的方法
Mar 22 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
May 13 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
Sep 17 PHP
PHP registerXPathNamespace()函数讲解
Feb 03 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生成微信红包数组的方法
2019/09/05 PHP
JQuery给元素添加/删除节点比如select
2013/04/02 Javascript
AngularJs Managing Service Dependencies详解
2016/09/02 Javascript
JavaScript中const、var和let区别浅析
2016/10/11 Javascript
jQuery实现模拟flash头像裁切上传功能示例
2016/12/11 Javascript
浅析JavaScript中var that=this
2017/02/17 Javascript
微信小程序中顶部导航栏的实现代码
2017/03/30 Javascript
详解Angular2中Input和Output用法及示例
2017/05/21 Javascript
深入理解vue中的$set
2017/06/01 Javascript
nodejs微信扫码支付功能实现
2018/02/17 NodeJs
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
2018/03/05 Javascript
vue自定义移动端touch事件之点击、滑动、长按事件
2018/07/10 Javascript
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
vue.js中ref及$refs的使用方法解析
2019/10/08 Javascript
npm qs模块使用详解
2020/02/07 Javascript
Python解决鸡兔同笼问题的方法
2014/12/20 Python
python去掉行尾的换行符方法
2017/01/04 Python
浅谈python爬虫使用Selenium模拟浏览器行为
2018/02/23 Python
Python中__slots__属性介绍与基本使用方法
2018/09/05 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
python pickle存储、读取大数据量列表、字典数据的方法
2019/07/07 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
Django全局启用登陆验证login_required的方法
2020/06/02 Python
Python中Yield的基本用法
2020/10/18 Python
python设置中文界面实例方法
2020/10/27 Python
H5仿微信界面教程(一)
2017/07/05 HTML / CSS
董事长岗位职责
2013/11/30 职场文书
幼儿园实习自我鉴定
2013/12/15 职场文书
会计大学生职业生涯规划书范文
2014/01/13 职场文书
青年文明号复核材料
2014/02/11 职场文书
《美丽的彩虹》教学反思
2014/02/25 职场文书
班主任师德师风自我剖析材料
2014/10/02 职场文书
月考总结与反思
2015/10/22 职场文书
使用python+pygame开发消消乐游戏附完整源码
2021/06/10 Python
Python制作表白爱心合集
2022/01/22 Python