php使用domdocument讀取xml文件


使用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;//第一次輸出字符串:漢族,第二次輸出字符串:火星
  }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM