2
我想比较两个包含HTML的字符串。 (它们都通过wysiwyg编辑器放入数据库中)。比较并突出显示包含html的两个字符串的差异
我想得到的结果是看看哪些单词被删除,哪些已被添加。
要做到这一点我使用this bit of code如下:
$old = "<p>Lorem ipsum is standard dummy text</p>";
$new = "<p>Lorem ipsum was standard dummy jibbrish</p>";
echo htmlDiff($old, $new);
这工作完全正常。但是,当我添加一些标签,如<li>
,乐趣结束。
例如,如果我想有以下几点:
$old = "<p>Lorem ipsum is standard dummy text. <ul><li>Lorem</li><li>Ipsum</li><li>Dolor</li></ul></p>";
$new = "<p>Lorem ipsum was standard dummy jibbrish. <ul><li>Lorem</li><li>Dolor</li></ul></p>";
echo htmlDiff($old, $new);
的<del>
标签被第一个列表项后正确添加,但删除列表项被放置在<del>
标签以外,使它看起来像它没有被删除。
我可以解决这个通过剥离所有标签,但我想保持两个字符串的布局。
任何帮助或建议,非常感谢。