(PECL xdiff >= 1.5.0)
xdiff_file_rabdiff — 使用 Rabin 的多項式指紋演算法產生兩個檔案的二進位差異
產生兩個檔案的二進位差異,並將結果儲存到一個修補程式檔案中。此函式與 xdiff_file_bdiff() 的差異在於使用的演算法不同,這應該會導致更快的執行速度和更小的差異檔案。此函式適用於文字和二進位檔案。產生的修補程式檔案可以使用 xdiff_file_bpatch()/xdiff_string_bpatch() 來套用。
有關所使用演算法之間差異的更多詳細資訊,請查看 » libxdiff 網站。
old_file
第一個檔案的路徑。此檔案作為「舊」檔案。
new_file
第二個檔案的路徑。此檔案作為「新」檔案。
dest
產生的修補程式檔案的路徑。產生的檔案包含「舊」檔案和「新」檔案之間的差異。它是二進位格式,人類無法讀取。
範例 #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 設定得夠高。