如何评估DOMTXpath->查询是否实际返回数据。现在我正在做($ xml是一个DOMXpath对象):
foreach($xml->query($xpath) as $node)
{
echo $node->textContent;
}
但如果我的$ xpath不会导致节点,它就不会输出任何数据。我试过像:
if ($xml->query($xpath))
{
echo "found";
}else{
echo "not found";
}
但这似乎不起作用。如何测试我的查询是否实际返回匹配的节点(在这种情况下实际上是一个属性)?
答案 0 :(得分:5)
检查query()函数返回时的length参数。 xpath-> query()返回DOMNodeList。
$nodeList = $xpath->query();
if ($nodeList->length > 0) {
echo 'Yay!';
} else {
echo 'No!';
}