XPATH获取Entrys的值为1的5.属性的位置

Ger*_*erd -1 php xml xpath

我有一个XML文件:

<attribute id="1" export="01101">
  <value>test</value>
</attribute>
Run Code Online (Sandbox Code Playgroud)

现在,我想要所有的Entrys,其中Number是1的5.属性导出中的数字.我使用PHP进行查询.我试过这个,但是没有工作:

$xpath->query("//attribute/@export[substring(., 4, 1) = '1]");
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢.

Vol*_*enD 5

正如@HaukurHaf指出的那样,缺少一个引用.所以,它应该是:

$xpath->query("//attribute/@export[substring(., 4, 1) = '1']");
Run Code Online (Sandbox Code Playgroud)

但是,这不是唯一的问题.根据该文件substring

与其他XPath函数一样,该位置不是从零开始的.字符串中的第一个字符的位置为1,而不是0.

所以,最终版本应该是:

$xpath->query("//attribute/@export[substring(., 5, 1) = '1']");
Run Code Online (Sandbox Code Playgroud)