(PECL xdiff >= 0.2.0)
xdiff_file_diff — Make unified diff of two files
$old_file
   , string $new_file
   , string $dest
   [, int $context = 3
   [, bool $minimal = false
  ]] )
   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_file
     Path to the first file. This file acts as "old" file.
new_file
     Path to the second file. This file acts as "new" file.
dest
     Path of the resulting patch file.
context
     Indicates 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). 
      
   成功时返回 TRUE, 或者在失败时返回 FALSE.
  
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.