如何从DOMXPath :: query()方法获取完整的HTML?

时间:2013-06-09 17:42:16

标签: php domdocument

我有一个文档,我希望从中提取特定的div,其中包含未触及的内容。 我这样做:

$dom = new DOMDocument();
$dom->loadHTML($string);//that's HTML of my document, string

和xpath查询:

$xpath = new DOMXPath($dom);
$xpath_resultset =  $xpath->query("//div[@class='text']");
/*I'm after div class="text"*/

现在我使用item(0)

获得的$xpath_resultset方法
$my_content = $xpath_resultset->item(0);

我得到的是对象(不是字符串)$ my_content我可以回显或settype()到字符串,但结果我得到的是完全剥离的标记?

如何从div class ='text'获取所有

1 个答案:

答案 0 :(得分:39)

只需将节点传递给DOMDocument::saveHTML方法:

$htmlString = $dom->saveHTML($xpath_resultset->item(0));

这将为您提供该特定DOMNode及其所有子节点的字符串表示。