0

我想使用 Zend\Dom 来获取 div 中的所有 html 元素,但它只是提取它的文本并去除 html 标签

HTML:

<div class="test">
<div id="div1">Text1</div>
<div id="div2">Text2</div>
</div>

我想得到这个:

<div id="div1">Text1</div>
<div id="div2">Text2</div>

但是 Zend\Dom 返回这个:

Text1
Text2

这是代码:

$dom = new Query($html);
$results = $dom->execute('.test');
4

2 回答 2

1

你可以有这样的结果的 html 值:

foreach ($results as $result)
{
  $results->getDocument()->saveHTML($result);
}
于 2014-04-07T13:55:36.297 回答
0

Zend/Dom 类中的每个方法都返回 Zend/Dom/NodeList Object 。

您应该使用 getDocument 函数来获取完整的 DOM 。

use Zend\Dom\Query;
$dom = new Query($html);
$results = $dom->execute('.test');
echo $results->getDocument();  

参考 : -

Zend Framework 2 的 Zend/Dom/NodeList 文档

于 2014-04-05T02:26:16.753 回答