评估DOMXpath-> query的结果是否返回匹配

spy*_*g63 1 php nodelist domxpath

如何评估DOMTXpath-> query是否实际返回数据.现在我正在做($ xml是一个DOMXpath对象):

foreach($xml->query($xpath) as $node)
{
  echo $node->textContent;
}
Run Code Online (Sandbox Code Playgroud)

但如果我的$ xpath不会导致节点,它就不会输出任何数据.我尝试过类似的东西:

if ($xml->query($xpath))
{
echo "found";
}else{
echo "not found";
}
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用.如何测试我的查询是否实际返回匹配的节点(在这种情况下实际上是一个属性)?

Zim*_*zat 5

检查query()函数返回时的length参数.xpath-> query()返回一个DOMNodeList.

$nodeList = $xpath->query();
if ($nodeList->length > 0) {
    echo 'Yay!';
} else {
    echo 'No!';
}
Run Code Online (Sandbox Code Playgroud)