XML:
<A>
<B type="source">
<C>
<D>
<E ref="description">my_desc</E>
<E>Some other E</E>
</D>
</C>
</B>
</A>
PHP:
$doc = new SimpleXMLElement('URL.xml', null, true);
$path = $doc->xpath('A/B[@type="source"]/C/D/E[@ref="description"]');
var_dump ($path);
返回:
Array
(
)
最终,我试图通过<E>
获得ref="description"
的内在价值。我究竟做错了什么?遵循以下指南:http://php.net/simplexmlelement.xpath
答案 0 :(得分:0)
使用您提供的XML,以下代码将打印出E:
的字符串值$doc = new SimpleXMLElement('URL.xml', null, true);
$path = $doc->xpath('/A/B[@type="source"]/C/D/E[@ref="description"]');
echo $path[0];
您需要使用/开始查询以指定文档根目录。
你也可以查询// E [@ref =&#34; description&#34;]来找到你想要的所有E元素。