(PECL xdiff >= 0.2.0)
xdiff_file_diff — Make unified diff of two files
xdiff_file_diff( string $old_file, string $new_file, string $dest, int $context = 3, bool $minimal = false ): bool
Makes an unified diff containing differences between old_file and new_file and stores it in dest file. The resulting file is human-readable. An optional context parameter specifies how many lines of context should be added around each change. Setting minimal parameter to true will result in outputting the shortest patch file possible (can take a long time).
old_filePath to the first file. This file acts as "old" file.
new_filePath to the second file. This file acts as "new" file.
destPath of the resulting patch file.
contextIndicates how many lines of context you want to include in diff result.
minimal Set this parameter to true if you want to minimalize size of the result (can take a long time).
Example #1 xdiff_file_diff() example
The following code makes unified diff of two php files with context length of 2.
<?php $old_version = 'my_script.php'; $new_version = 'my_new_script.php'; xdiff_file_diff($old_version, $new_version, 'my_script.diff', 2); ?>
Note:
This function doesn't work well with binary files. To make diff of binary files use xdiff_file_bdiff()/xdiff_file_rabdiff() function.
© 1997–2025 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.xdiff-file-diff.php