【发布时间】:2011-10-08 01:32:11
【问题描述】:
现状描述:
我有一个充满页面的文件夹(pages-folder),该文件夹内的每个页面(除其他外)都有一个带有id="short-info"的div。
我有一个代码可以从该文件夹中提取所有<div id="short-info">...</div> 并使用textContent 显示其中的文本(为此目的与nodeValue 相同)
加载 div 的代码:
<?php
$filename = glob("pages-folder/*.php");
sort($filename);
foreach ($filename as $filenamein) {
$doc = new DOMDocument();
$doc->loadHTMLFile($filenamein);
$xpath = new DOMXpath($doc);
$elements = $xpath->query("*//div[@id='short-info']");
foreach ($elements as $element) {
$nodes = $element->childNodes;
foreach ($nodes as $node) {
echo $node->textContent;
}
}
}
?>
现在的问题是,如果我正在加载的页面有一个孩子,比如图像:<div id="short-info"> <img src="picture.jpg"> Hello world </div>,输出将只有 Hello world 而不是图像,然后是 Hello世界。
问题:
如何使代码在 div id="short-info" 中显示完整的 html,例如包括该图像而不仅仅是文本?
【问题讨论】: