我有一个像这样的XML结构:
<layout>
<pattern> ... </pattern>
<row> ... </row>
</layout>
如何使用XPath按其索引选择<layout>
的第一个节点?
w3schools表示语法与/bookstore/book[1]/title
类似,但后来says:
这有一个问题。上面的示例在IE和其他浏览器中显示了不同的结果。
IE5及更高版本已经实现了[0]应该是第一个节点,但是根据W3C标准它应该是[1] !!
解决方法!
要解决IE5 +中的[0]和[1]问题,可以将SelectionLanguage设置为XPath。
但那是特定于客户的。 PHP手册也不是很清楚。
答案 0 :(得分:5)
菲利克斯说:尝试怎么样?
$l = new SimpleXMLElement('<layout>
<pattern> ... </pattern>
<row> ... </row>
</layout>');
foreach($l->xpath('/layout/*[1]') as $n) {// yeah yeah, it's only one....
echo $n->getName();
}
打印pattern
。 (php 5.3.1 / win32 / php.net build)