我试图遍历DOMDocument输出的对象的nodeValues并获取文本输出,但我不知道如何去做。我的代码和输出如下。
从下面的输出中我只需要获得NodeValue文本输出,例如“酒吧和酒店”。
$dom = new DOMDocument;
@$dom->loadHTML($v);
$xpath = new DomXpath($dom);
$div = $xpath->query('//*[@class="type-cat"]');
foreach ($div as $a) {
var_dump($a );
}
object(DOMElement)#22 (18) {
["tagName"]=> string(2) "h5"
["schemaTypeInfo"]=> NULL
["nodeName"]=> string(2) "h5"
["nodeValue"]=> string(41) " Bar and Hotel"
["nodeType"]=> int(1)
["parentNode"]=> string(22) "(object value omitted)"
["childNodes"]=> string(22) "(object value omitted)"
["firstChild"]=> string(22) "(object value omitted)"
["lastChild"]=> string(22) "(object value omitted)"
["previousSibling"]=> string(22) "(object value omitted)"
["nextSibling"]=> string(22) "(object value omitted)"
["attributes"]=> string(22) "(object value omitted)"
["ownerDocument"]=> string(22) "(object value omitted)"
["namespaceURI"]=> NULL
["prefix"]=> string(0) ""
["localName"]=> string(2) "h5"
["baseURI"]=> NULL
["textContent"]=> string(41) " Bar and Hotel"
}
答案 0 :(得分:1)
从节点对象的转储中可以看到,nodeValue就是您要查找的内容。您可以使用
访问它$a->nodeValue;
根据nodeType属性,这将返回文本值。
您可以在此处找到此以及所有其他公共可访问的属性和方法: