【问题标题】:What is a PHP library that will show inline diffs?什么是显示内联差异的 PHP 库?
【发布时间】:2019-03-04 19:59:08
【问题描述】:

我正在寻找一个 PHP 库,它可以为我提供两个字符串之间的内联差异,例如:http://grabby.info/dfe2835f606443757ae7c18404e71781.png

我目前正在使用 xdiff,但是当一个单词发生变化时它会划掉整行,这不是我想要的。

有什么建议吗?

【问题讨论】:

    标签: php diff


    【解决方案1】:

    为此,我使用 xdiff 突出显示 html 页面文本中的更改。基本工作流程是:

    1. 转义所有 HTML 实体
    2. 将 HTML 标记拆分为各自的行(在结束 > 之后附加 \n
    3. 在空白处分割生成的文本(消除重复的空白)
    4. \n作为分隔符重新加入上一次拆分的结果,所以现在所有标签和单词都在separate行上
    5. [xdiff_string_diff()][1]做差异
    6. 修补差异输出以使用适当的标签突出显示添加/删除

    如果您有很长的广告/删除序列,则不是特别有效,并且在额外的包装标签上非常头重脚轻,但它完成了工作。

    【讨论】:

    • 嗯,我一定会试试这个。这似乎是一个很好的、创造性的解决方案,绝对可以解决我的问题。感谢发帖。
    猜你喜欢
    • 2019-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-24
    • 2014-01-10
    • 2013-05-16
    相关资源
    最近更新 更多