我有一个像这样的HTML节点:
<b>Bold text</b>
变量$ el包含对该HTML节点文本的DOMElement引用(“粗体文本”),来自XPath表达式// b / text()
我想将元素更改为
<b><span>Bold Text</span></b>
所以我试过了:
$span = $doc->createElement('span', "Bold Text");
$el->parentNode->replaceChild($span,, $el)
失败,因为parentNode为null。
所以,作为测试,我试过: $ el-&gt; insertBefore($ span,$ el);
不抛出任何错误,但输出没有变化。
有什么想法吗?
答案 0 :(得分:1)
使用// b / text()的DOMXPath-&gt; query()应该返回一个DOMNodeList。使用item()方法获取项目。它应该是一个DOMText,它是一个DOMNode,而parentNode不应该为null。