DOMXpath 查询提取信息


DOMXpath Query Extracting Information

$doc = new DOMDocument();
$doc->loadHTML($htmlcode);
$xpath = new DOMXpath($doc);
$elements = $xpath->query("//*[@id='detail']/div[1]/h3/text()");
return var_dump($elements);

如何正确检索 xpath? 它正在返回

object(DOMNodeList)#4 (1) {
  ["length"]=>
  int(1)
}

当我做一个var_dump($doc(;它包含 html 作为 ["textContent"]=> string(22304(

我使用谷歌浏览器复制了 xpath

不可能

像您期望的那样使用 var_dump() 来内省DOMNodeList。您必须访问列表项0及其节点值:

$elements = $xpath->query("//*[@id='detail']/div[1]/h3/text()");
if($elements->length === 1) {
    echo $elements->item(0)->nodeValue;
} else {
   ...
}