簡體   English   中英

在PHP上使用xpath:如何選擇第一個孩子?

[英]Using xpath on PHP: how to select first child?

我有一個像這樣的XML結構:

<layout>
    <pattern> ... </pattern>
    <row> ... </row>
</layout>

如何使用XPath通過索引選擇<layout>的第一個節點?

w3schools表示類似於/bookstore/book[1]/title語法,但隨后

這有問題。 上面的示例在IE和其他瀏覽器中顯示了不同的結果。

IE5和更高版本實現了[0]應該是第一個節點,但是根據W3C標准,它應該是[1]!

解決方法!
要解決IE5 +中的[0]和[1]問題,可以將SelectionLanguage設置為XPath。

但這是特定於客戶的。 PHP手冊對此也不是很清楚。

正如費利克斯(Felix)所說:嘗試如何?

$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構建)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM