array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'fr', ), 'this' => array ( 0 => 'function.xdiff-file-patch-binary.php', 1 => 'xdiff_file_patch_binary', ), 'up' => array ( 0 => 'ref.xdiff.php', 1 => 'Fonctions xdiff', ), 'prev' => array ( 0 => 'function.xdiff-file-merge3.php', 1 => 'xdiff_file_merge3', ), 'next' => array ( 0 => 'function.xdiff-file-patch.php', 1 => 'xdiff_file_patch', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'fr', 'path' => 'reference/xdiff/functions/xdiff-file-patch-binary.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
Patche le fichier file
avec un
patch
binaire et enregistre le résultat dans le fichier
dest
. Cette fonction accepte les patchs créés avec
la fonction xdiff_file_bdiff() ou la fonction
xdiff_file_rabdiff() ou leur équivalent sous forme de chaînes.
Depuis la version 1.5.0, cette fonction est un alias de la fonction xdiff_file_bpatch().
file
Le fichier original.
patch
Le Patch binaire.
dest
Le chemin vers le fichier résultat.
Exemple #1 Exemple avec xdiff_file_patch_binary()
Le code suivant applique un diff binaire à un fichier.
<?php
$old_version = 'archive-1.0.tgz';
$patch = 'archive.bpatch';
$result = xdiff_file_patch_binary($old_version, $patch, 'archive-1.1.tgz');
if ($result) {
echo "File patched";
} else {
echo "File couldn't be patched";
}
?>
Note:
Les deux fichiers (le fichier et le patch) seront chargés en mémoire ; assurez-vous d'avoir défini
memory_limit
à une valeur assez élevée.