(PECL xdiff >= 0.2.0)
xdiff_file_patch — Применение унифицированного патча к файлу
   Применяет к файлу file патча patch
   и сохраняет результат в файл.
   patch должен быть унифицированным патчем, созданным
   функциями xdiff_file_diff()/xdiff_string_diff().
   Необязательный параметр flags задаёт режим операции.
  
fileОригинальный файл.
patchУнифицированный патч. Его можно создать функциями xdiff_string_diff() и xdiff_file_diff(), либо другими совместимыми инструментами.
destПуть к результирующему файлу.
flags
       Может быть XDIFF_PATCH_NORMAL (режим по умолчанию,
       нормальное создание патча) или XDIFF_PATCH_REVERSE (откат
       патча).
      
       Начиная с версии 1.5.0 вы можете использовать побитовое ИЛИ для
       подключения флага XDIFF_PATCH_IGNORESPACE.
      
   Функция возвращает true, если создание патча прошло успешно, строку с отклонёнными
   данными, если нет, и false в случае внутренней ошибки.
  
Пример #1 Пример использования функции xdiff_file_patch()
Следующий код применяет унифицированный патч к файлу.
<?php
$old_version = 'my_script-1.0.php';
$patch = 'my_script.patch';
$errors = xdiff_file_patch($old_version, $patch, 'my_script-1.1.php');
if (is_string($errors)) {
   echo "Отклонены:\n";
   echo $errors;
}
?>Пример #2 Пример отката патча
Следующий код применяет откат патча к файлу.
<?php
$new_version = 'my_script-1.1.php';
$patch = 'my_script.patch';
$errors = xdiff_file_patch($new_version, $patch, 'my_script-1.0.php', XDIFF_PATCH_REVERSE);
if (is_string($errors)) {
   echo "Отклонены:\n";
   echo $errors;
}
?>