使用PHP,使用XQuery查找给定HTML元素的第一个实例,然后替换该元素中的所有HTML,简单方法是什么?
到目前为止,我已经有了这个:
$myHTML = '<strong>Some <em>HTML</em></strong>';
$domDocument = new DOMDocument('1.0');
@$domDocument->loadHTML($content);
$xpd = new DOMXPath($domDocument);
$result = $xpd->query('//div[@id="main"]');
$result->item(0)->nodeValue = $myHTML;
$output = $domDocument->saveHTML();
这几乎可行。一个问题是$ myHTML的值在输出中被XML转义。要解决此问题,也许我可以创建一个临时DOMDocument,使用我的HTML加载它,然后遍历它,将其节点添加到$ domDocument。
对于做这样简单的事情似乎很复杂。有一种更简单的方法吗?
谢谢!