介紹文件:提取數據形式的XML使用SimpleXML PHP中
我想通過與靈活類結構的XML文件循環。
問題:
我不知道通過理論infinte小類循環,而不必使X量「爲每個」語句(參見編碼在底部的例子)。如何動態遍歷類別結構?
<?xml version="1.0" encoding="utf-8"?>
<catalog>
<category name="Category - level 1">
<category name="Category - level 2" />
<category name="Category - level 2">
<category name="Category - level 3" />
</category>
<category name="Category - level 2">
<category name="Category - level 3">
<category name="Category - level 4" />
</category>
</category>
</category>
</catalog>
我現在擁有的一切:
我沒有問題,通過XML文件的循環使用一組結構:
<catalog>
<category name="Category - level 1">
<category name="Category - level 2">
<category name="Category - level 3" />
</category>
<category name="Category - level 2">
<category name="Category - level 3" />
</category>
</category>
</catalog>
編碼例:
//$xml holds the XML file
foreach ($xml AS $category_level1)
{
echo $category_level1['name'];
foreach ($category_level1->category AS $category_level2)
{
echo $category_level2['name'];
foreach ($category_level2->category AS $category_level3)
{
echo $category_level3['name'];
}
}
}
由於OP是name屬性之後,你可以簡單地使用'//類別/ @ name'您的XPath。這將返回名稱屬性節點而不是類別元素。 – Gordon 2010-04-05 14:06:02