【发布时间】:2011-12-13 06:19:00
【问题描述】:
我有一个格式如下的 HTML 文件:
<p class="p1">subject</p>
<p class="p2">detail <span>important</span></p>
<p class="p1">subject</p>
<p class="p2">detail<span>important</span></p>
我编写了一个 PHP 代码来自动获取每个 p1,并将它们插入到我的 mysql 表中。
这是我的代码:
$doc = new DOMDocument();
$doc->loadHTMLFile("file.html");
$xpath = new DomXpath($doc);
$subject = $xpath->query('//p');
for ($i = 0 ; $i < $subject->length-1 ; $i ++) {
if ($subject->item($i)->getAttribute("class") == "p1")
echo $subject->item($i)->nodeValue;
}
...
这不是我的完整代码,但问题是:
echo $subject->item($i)->nodeValue;
这给了我<p>detail important</p>,没有<span></span> 标签。
在细节的“重要”部分周围放置 span 标签非常重要。有什么功能可以做到不头痛吗?
提前致谢
【问题讨论】:
-
innerHTML in xPath?的可能重复
-
我发现了这个 SO 条目,希望对您有所帮助:stackoverflow.com/questions/6286362/…