在PHP XPATH中使用属性值读取节点的名称和值

在PHP XPATH中使用属性值读取节点的名称和值,php,xml,xpath,Php,Xml,Xpath,我使用的是PHP DOM XPATH。我有如下XML结构 <?xml version="1.0" encoding="UTF-8"?> <root xmlns:rank="http://www.w3.org/2001/XMLSchema"> <rank:one year = "2015">99</<rank:one> <rank:two year = "2014">128</rank:two>

我使用的是PHP DOM XPATH。我有如下XML结构

<?xml version="1.0" encoding="UTF-8"?>
<root xmlns:rank="http://www.w3.org/2001/XMLSchema">
    <rank:one year = "2015">99</<rank:one>
    <rank:two year = "2014">128</rank:two>
    <rank:three year = "2015">27</rank:three>
</root>

在这种情况下,我没有得到xpath表达式应该是什么

$xpath->query('//root/*[@year="2015"]');

然后您可以使用
name()
text()
分别获取其名称和值。

谢谢。正是我想要的。请不要拒绝像这样的建议编辑。我们正在努力改进StackOverflow,所以即使是小的好的编辑也应该得到批准。否则你会在邮件上留下不必要的噪音。为了判断这是否可取,你可以问自己“我会批准一个建议来添加*谢谢你吗?”或者,如果你真的想拒绝某人的“太小”的编辑(同样,你不应该),然后使用“拒绝和编辑”并重新应用小编辑以避免在帖子上留下噪音。
$xpath->query('//root/*[@year="2015"]');