使用PHP XML解析替换HTML标记的内容

问题描述:

使用PHP,使用XQuery来查找给定HTML元素的第一个实例,然后替换该元素内的所有HTML会是什么简单使用PHP XML解析替换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中。

看起来很复杂,因为这样做很简单。有没有更简单的方法呢?

谢谢!

看看my answer关于类似(相同?)问题。

+0

对我来说+1,我不知道C14N方法,这真是太棒了! – 2009-06-05 14:13:16