【发布时间】:2020-01-06 14:53:03
【问题描述】:
我正在尝试使用 XPath 从文档中获取所有部分标题元素的数量(H1,H2,H3,H4,H5,H6),例如:
$headerCount=$xpath->query("count(//*[self::h1 or self::h2 or self::h3 or self::h4 or self::h5 or self::h6])");
我用这个例子在http://www.xpathtester.com/xpath 上测试了上面的查询,结果是'6':
<h2>Header 1</h2>
<h2>Header 2</h2>
<h3>Header 2.1</h3>
<h4>Header 2.1.1</h4>
<h2>Header 3</h2>
<h3>Header 3.1</h3>
但是当我尝试像这样使用 $headerCount 时:
echo "count: ".$headerCount->textContent;
我得到这个错误:
Undefined property: DOMNodeList::$textContent
DOMNodeList 暗示有一个节点列表,但我认为它只是一个数值,例如所有标题的数量为6。
谁能解释我如何才能获得文档中所有标题的数量?
【问题讨论】:
-
请注意,根据PHP manualDOMXPath::query 只返回DOMNodeList。