如何仅在xml和php中查询一个节点?

如何仅在xml和php中查询一个节点?,php,mysql,xml,dom,Php,Mysql,Xml,Dom,我有一个密码: $query='//文档/状态[.=“已发布”] $names=$xpath->query($query);//A. 匹配元素列表 结果 秒 辛夫 CI_INV000239562 发票联 张贴 42570935 42570935 42570935 20111115 20111115 20111115 20111115 澳大利亚商品及服务税 包括 10 澳元 115 11.50 126.50 126.50 126.50 如果我想展示 CI_INV000239562 只有 我该

我有一个密码:

$query='//文档/状态[.=“已发布”]
$names=$xpath->query($query);//A. 匹配元素列表

结果


秒
辛夫
CI_INV000239562
发票联
张贴
42570935
42570935
42570935
20111115
20111115
20111115
20111115
澳大利亚商品及服务税
包括
10
澳元
115
11.50
126.50
126.50
126.50
如果我想展示

CI_INV000239562
只有

我该怎么办

如果我想显示更多节点? 比如说,什么时候到期

$query='//Document/Status[.=“Posted”]/../DocumentID/ammontdue'

这是可能的还是我必须使用另一种方法


谢谢

有几种方法可以做到这一点,下面是一个例子:-

$query = '//Document/Status[. = "Posted"]/../DocumentID';
...
$names = $xpath->query($query);
foreach ($names as $name)
{
  $node = $name->nodeValue; // string of "CI_INV000239562"
}
要查找多个节点名称,请执行以下操作:-

//文档/状态[.=“已发布”]/../*[self::DocumentID或self::AmountDue]


如果我想添加更多,例如AmmontDue$query='//Document/Status[.=“Posted”]/../DocumentID/amountdue';谢谢你提供的信息,我会试试;)
  <DocumentID>CI_INV000239562</DocumentID>
$query = '//Document/Status[. = "Posted"]/../DocumentID';
...
$names = $xpath->query($query);
foreach ($names as $name)
{
  $node = $name->nodeValue; // string of "CI_INV000239562"
}
$query = '//Document/Status[. = "Posted"]/DocumentID';