PHP - xdiff 函数



xdiff 扩展可以使我们能够创建和应用包含不同文件版本之间差异的补丁文件。

此扩展可以支持两种操作模式:字符串和文件,以及两种不同的补丁格式:统一和二进制。统一补丁非常适合文本文件,因为它们是人类可读的并且易于审查。对于二进制文件:档案或图像,二进制补丁可能是合适的选择,因为它们是二进制安全的并且可以处理不可打印的字符。

从 1.5.0 版本开始,有两套不同的函数来生成二进制补丁。新函数:xdiff_string_rabdiff() 和 xdiff_file_rabdiff() 可以生成与旧函数兼容的输出,但通常速度更快并且生成的结果更小。

此扩展可以使用 libxdiff 来实现这些函数。

预定义常量

此扩展在下面定义了常量,并且仅在扩展已编译到 PHP 中或在运行时动态加载时可用。

  • XDIFF_PATCH_NORMAL (integer) - 此标志表示 xdiff_string_patch() 和 xdiff_file_patch() 函数应通过将补丁应用于原始内容来创建结果,从而创建文件的较新版本。这是默认的操作模式。
  • XDIFF_PATCH_REVERSE (integer) - 此标志表示 xdiff_string_patch() 和 xdiff_file_patch() 函数应通过反转补丁从较新内容中更改来创建结果,从而创建原始版本。
序号 函数及描述
1 xdiff_file_bdiff()

函数可以生成两个文件的二进制差异。

2 xdiff_file_bdiff_size()

函数可以读取通过应用二进制差异创建的文件的大小。

3 xdiff_file_bpatch()

函数可以用二进制差异修补文件。

4 xdiff_file_diff()

函数可以生成两个文件的统一差异。

5 xdiff_file_diff_binary()

函数可以生成两个文件的二进制差异。

6 xdiff_file_merge3()

函数可以将三个文件合并为一个。

7 xdiff_file_patch()

函数可以用统一差异修补文件。

8 xdiff_file_patch_binary()

函数是 xdiff_file_bpatch() 的别名。

9 xdiff_file_rabdiff()

函数可以使用 Rabin 的多项式指纹算法生成两个文件的二进制差异。

10 xdiff_string_bdiff()

函数可以生成两个字符串的二进制差异。

11 xdiff_string_bdiff_size()

函数可以读取通过应用二进制差异创建的文件的大小。

12 xdiff_string_bpatch()

函数可以用二进制差异修补字符串。

13 xdiff_string_diff()

函数可以生成两个字符串的统一差异。

14 xdiff_string_diff_binary()

函数是 xdiff_string_bdiff() 的别名。

15 xdiff_string_merge3()

函数可以将三个字符串合并为一个。

16 xdiff_string_patch()

函数可以用统一差异修补字符串。

17 xdiff_string_patch_binary()

函数是 xdiff_string_bpatch() 的别名。

18 xdiff_string_rabdiff()

函数可以使用 Rabin 的多项式指纹算法生成两个字符串的二进制差异。

php_function_reference.htm
广告