xdiff_string_diff

(PECL xdiff >= 0.2.0)

xdiff_string_diff生成两个字符串的统一 diff

描述

xdiff_string_diff(
    字符串 $old_data,
    字符串 $new_data,
    整数 $context = 3,
    布尔值 $minimal = false
): 字符串

生成包含 old_data 字符串和 new_data 字符串之间差异的统一 diff,并将其返回。生成的 diff 是人类可读的。可选的 context 参数指定在每个更改周围添加多少行上下文。将 minimal 参数设置为 true 将导致输出尽可能短的补丁文件(可能需要很长时间)。

参数

old_data

第一个包含数据的字符串。它充当“旧”数据。

new_data

第二个包含数据的字符串。它充当“新”数据。

context

指示您想要在 diff 结果中包含多少行上下文。

minimal

如果您想要最小化结果的大小(可能需要很长时间),请将此参数设置为 true

返回值

返回包含生成的 diff 的字符串,或者如果发生内部错误,则返回 false

示例

示例 #1 xdiff_string_diff() 示例

以下代码生成两篇文章的统一 diff。

<?php
$old_article
= file_get_contents('./old_article.txt');
$new_article = $_REQUEST['article']; /* 假设有人将新文章粘贴到 html 表单 */

$diff = xdiff_string_diff($old_article, $new_article, 1);
if (
is_string($diff)) {
echo
"两篇文章之间的差异:\n";
echo
$diff;
}

?>

备注

注意:

此函数不适用于二进制字符串。要生成二进制字符串的 diff,请使用 xdiff_string_bdiff()/xdiff_string_rabdiff()

参见

添加注释

用户贡献注释

此页面没有用户贡献的注释。
To Top