要遍历XML树,我们可以使用下面的代码
/**
* 使用PHP遍历XML文档树
*
* @param
* @arrange 512-笔记网: www.jb51.cc
**/
<?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");
?>
/*** 来自编程之家 jb51.cc(jb51.cc) ***/
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>