我有一些包含此内容的HTML:
<div class="test">
Outer
<div class="test">Inner 1</div>
<div class="test">Inner 2</div>
</div>
我正在对这些元素的内容进行str_replace()
:
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DOMXpath($dom);
foreach($xpath->query("//div[@class='test']") as $node) {
$node->nodeValue = str_replace(" ", "X", $node->nodeValue);
}
应该用“ X”替换所有空格。
但是会导致此错误:
警告:无法获取DOMElement。节点在第[[63]行的/ path / to / my / file.php中不再存在
如果只有一个嵌套的div,则可以使用:
<div class="test">
Outer
<div class="test">Inner 1</div>
</div>
为什么会这样,如何使它正常工作?
外部