cbwar/php-text-difference

一个用于生成两个可哈希对象(字符串或数组)之间差异的综合库。为了添加命名空间和psr-4自动加载,基于一个分支进行分支

1.3.0 2022-02-23 08:27 UTC

This package is auto-updated.

Last update: 2024-09-23 14:08:05 UTC


README

介绍

一个用于生成两个可哈希对象(字符串或数组)之间差异的综合库。生成的差异可以以所有标准格式渲染,包括

  • 统一
  • 上下文
  • 内联HTML
  • 并排HTML

差异引擎核心(即,序列匹配器)的逻辑主要基于Python difflib包。这样做的主要原因是其高度的准确性。

安装

通过Composer

composer require cbwar/php-text-difference 

示例用法

一个快速使用示例可以在example/目录下找到,以及example.php文件中。简单用法示例

<?php
$options = array(
    //'ignoreWhitespace' => true,
    //'ignoreCase' => true,
);
$a = explode("\n", file_get_contents($some_file_path));
$b = explode("\n", file_get_contents($some_other_file_path);

$diff = new Diff\Diff($a, $b, $options);
$renderer = new Diff\Renderer\Html\SideBySide;
echo $diff->Render($renderer);
?>

许可证(BSD许可证)

版权(c)2009 Chris Boulton chris.boulton@interspire.com 保留所有权利。

重新分发和使用源代码和二进制形式,无论是否修改,只要满足以下条件

  • 源代码重新分发必须保留上述版权声明、本条件列表和以下免责声明。
  • 二进制形式重新分发必须复制上述版权声明、本条件列表和以下免责声明在随分发的文档或其他材料中。
  • 未经事先书面许可,不得使用Chris Boulton的名字或其贡献者的名字来认可或推广由本软件派生的产品。

本软件由版权所有者和贡献者“按原样”提供,并明确或暗示地放弃包括但不限于商销性和针对特定目的适用性的隐含保证。在任何情况下,版权所有者或贡献者均不对任何直接、间接、偶然、特殊、示范性或后果性损害(包括但不限于替代货物或服务的采购;使用、数据或利润的丧失;或业务的中断)承担责任,无论这种损害是否由使用本软件引起,即使已被告知本软件可能造成此类损害。