1

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

foreach($xml->query($xpath) as $node)
{
  echo $node->textContent;
}

但是,如果我的 $xpath 没有生成节点,它就不会输出任何数据。我试过类似的东西:

if ($xml->query($xpath))
{
echo "found";
}else{
echo "not found";
}

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

4

1 回答 1

5

检查 query() 函数返回的长度参数。xpath->query() 返回一个DOMNodeList

$nodeList = $xpath->query();
if ($nodeList->length > 0) {
    echo 'Yay!';
} else {
    echo 'No!';
}
于 2011-02-24T18:31:31.403 回答