PHP XMLドキュメントの全ノードを巡る方法
この例はPHPがXMLドキュメントのすべてのノードを遍歴する方法を説明する。皆さんの参考にしてください。具体的な実現方法は以下の通りです。
1.contact.xmlコード:
1.contact.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>
2.phpコード:
<?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 . "
");
$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>
");
walk_tree ($doc->root ());
print ("</pre>
");
?>
本論文で述べたように、皆さんのphpプログラムの設計に役に立ちます。