本文实例讲述了PHP遍历XML文档所有节点的方法。分享给大家供大家参考。具体实现方法如下:
1. contact.xml代码:
1 2 3 4 5 6 7 8 9 10 11 12 | <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>
|
Nach dem Login kopieren
2. php代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?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 class=" brush:php;toolbar:false ">\n" );
walk_tree ( $doc ->root ());
print ("
|
Nach dem Login kopieren
\n");
?>
希望本文所述对大家的php程序设计有所帮助。