xdiff_file_rabdiff
(PECL xdiff >= 1.5.0)
xdiff_file_rabdiff — Создать бинарный патч сравнивая два файла с помощью полиноминального алгоритма Rabin fingerprinting
Описание
$old_file
, string $new_file
, string $dest
) : boolСоздает бинарный патч сравнивая два файла и сохраняет результат в файл. Эта функция отличается от xdiff_file_bdiff() используемым алгоритмом, который работает быстрее и производит патчи меньшего размера. Эта функция работает как с текстом, так и с бинарными данными. Патч впоследствии можно применить с помощью функций xdiff_file_bpatch()/xdiff_string_bpatch().
Более подробно разница алгоритмов объяснена на сайте » libxdiff.
Список параметров
-
old_file
-
Путь к первому, "старому" файлу.
-
new_file
-
Путь ко второму, "новому" файлу.
-
dest
-
Путь результирующего файла патча. Он будет содержать различия между старым и новым файлом в бинарном, человеконечитаемом формате.
Возвращаемые значения
Возвращает true
в случае успешного завершения или false
в случае возникновения ошибки.
Примеры
Пример #1 Пример использования xdiff_file_rabdiff()
Следующий код сравнивает два архива и создает патч.
<?php
$old_version = 'my_script_1.0.tgz';
$new_version = 'my_script_1.1.tgz';
xdiff_file_rabdiff($old_version, $new_version, 'my_script.bdiff');
?>
Примечания
Замечание:
Оба файла будут загружены в память, так что убедитесь, что параметр memory_limit настроен корректно.