• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php使用domdocument读取xml文件

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

使用domdocument读取xml文件需要用到以下几个方法和属性:

  方法:

    1:读取xml文件:load()

    2:获取标签的对象数组:getElementByTagName()

    3:对象数组的索引:item()

  属性:

    1:获取属性或节点的文本:nodeValue

    2:获取属性名或者节点名:nodeName

    2:获取该节点的子节点集合:childNodes

    3:获取该节点的属性集合:attributes

实例xml文件(a.xml):

 1 <?xml version="1.0 encoding="UTF-8"?>
 2 <people nation="汉族" city="火星">
 3     <xiaohua college="qinghua">
 4         <name>小华</name>
 5         <age>12</age>
 6         <sex></sex>
 7     </xiaohua>
 8     <xiaoming college="beida">
 9         <name>小明</name>
10         <age>15</age>
11         <sex></sex>
12     </xiaoming>
13     <xiaoqiang college="jiaotong">
14         <name>小强</name>
15         <age>13</age>
16         <sex></sex>
17     </xiaoqiang>
18 </people>    

php使用domdocument操作xml文件

<?php
    $dom = new DomDocument();
    $dom->load(a.xml);
    $people = $dom->getElementByTagName('people');//获取people的节点数组
$people->item(0);//获取第一个people节点 $people->item(0)->childNodes;//获取第一个people节点的所有子节点 $people->item(0)->attributes;//获取第一个people节点的所有属性
$people->item(0)->childNodes->item(0);//获取第一个people节点的第一个节点,即xiaohua节点 $people->item(0)->attributes->item(0);//获取第一个people节点的第一个属性,即nation属性。 $people->item(0)->childNodes->item(0)->childNodes->item(0);//获取第一个people节点的第一个节点里的name节点
echo $people->item(0)->attributes->item(0)->nodeName;//输出字符串:nation echo $people->item(0)->attributes->item(0)->nodeValue//输出字符串:汉族 echo $people->item(0)->childNodes->item(0)->childNodes->item(0)->nodeName;//输出字符串:name   echo $people->item(0)->childNodes->item(0)->childNodes->item(0)->nodeValue;//输出字符串:小华

  foreach($people->item(0)->attributes as $key => $value){//遍历节点
    echo $key;//第一次输出字符串:nation,第二次输出字符串:city
    echo $value->nodeValue;//第一次输出字符串:汉族,第二次输出字符串:火星
  }

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
IP白名单的实现(PHP)发布时间:2022-07-10
下一篇:
PHP实现四种基本排序算法发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap