【发布时间】:2015-12-05 18:58:01
【问题描述】:
我有以下 XML:
<root>
<level name="level1">
<!-- More children <level> -->
</level>
<level name="level2">
<!-- Some more children <level> -->
</level>
</root>
如何直接在<root> 下提取<level>,以便可以相对于提取的<level> 运行诸如$xml->xpath('//some-query') 之类的XPath 查询?
【问题讨论】:
-
不明白。您希望 Xpath 获得一级节点吗?
/root/level[1] -
您是否有特殊原因希望/需要将这些查询分成两部分? (可能有....)
-
我设计的
XPath仅在根目录中只有一个<level>时才有效。 -
您可以通过添加谓词来将其限制/固定到一级元素,例如
level[@name="level2"]您的查询。 -
我唯一的问题是我的
XPath查询应该遵循这一步,首先在 xml 中识别叶节点:stackoverflow.com/questions/32478608/…