要遍历XML树,我们可以使用下面的代码
<?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 ("\n"); walk_tree ($doc->root ()); print ("\n"); ?>
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>