【发布时间】:2011-09-11 07:07:34
【问题描述】:
我正在尝试使用 nodeValue 在文件中获取 div 标签的 innerhtml,但是此代码仅输出纯文本,并且似乎从 div 中去除了所有 html 标签。如何更改此代码以输出 div 的 HTML 内容而不是纯文本,并且还输出包装它的子元素的主 div。
例子:
file.txt 的内容:
<div class="1"><span class="test">text text text</span></div>
<div class="2"><span class="test">text text text</span></div>
<div class="3"><span class="test">text text text</span></div>
script.php:
$file= file_get_contents('file.txt');
$doc = new DOMDocument();
@$doc->loadHTML('<?xml encoding="UTF-8">'.$file);
$entries = $doc->getElementsByTagName('div');
for ($i=0;$i<$entries->length;$i++) {
$entry = $entries->item($i);
echo $entry->nodeValue;
}
输出:文本文本文本文本文本文本文本文本文本
我需要它输出什么:
<div class="1"><span class="test">text text text</span></div>
<div class="2"><span class="test">text text text</span></div>
<div class="3"><span class="test">text text text</span></div>
注意需要输出父 div (..etc) 以及包装 span 标签...
帮助!
【问题讨论】: