(PECL xdiff >= 0.2.0)
xdiff_file_patch — Bir dosyaya bir tekil yama uygular
$dosya
, string $yama
, string $hedef
[, int $seçenekler
= DIFF_PATCH_NORMAL
] )
Belirtilen dosya
'ya tekil
yama
'yı uygular ve sonucu
hedef
'e kaydeder. yama
dizgesi xdiff_file_diff() veya
xdiff_string_diff() ile üretilmiş tekil türde bir
fark dizgesi olmalıdır. İsteğe bağlı seçenekler
değiştirgesi ile işlem kipi belirtilebilir.
dosya
Yamanın uygulanacağı dosyanın yolu.
yama
xdiff_string_diff() ve xdiff_file_diff() işlevleriyle veya uygun araçlarla üretilmiş tekil yama dizgesi.
hedef
Sonucun kaydedileceği dosyanın yolu..
seçenekler
XDIFF_PATCH_NORMAL
(öntanımlı kip, normal yama)
veya XDIFF_PATCH_REVERSE
(tersinir yama)
olabilir.
1.5.0 sürümünden itibaren
XDIFF_PATCH_IGNORESPACE
sabiti bit seviyesinde
VEYAlanarak belirtilebilmektedir.
Dahili bir hata oluşmuşsa FALSE
, yama başarıyla uygulanmışsa TRUE
,
reddedilen değişiklikler varsa reddedilen
parçaları içeren bir dizge döner.
Örnek 1 - xdiff_file_patch() örneği
Aşağıdaki kodda, bir dosya bir tekil fark dizgesiyle yamanmaktadır.
<?php
$eski_dosya = 'my_script-1.0.php';
$yama = 'my_script.patch';
$hatalar = xdiff_file_patch($eski_dosya, $yama, 'my_script-1.1.php');
if (is_string($hatalar)) {
echo "Reddedilenler:\n";
echo $hatalar;
}
?>
Örnek 2 - Yamayı geri alma örneği
Aşağıdaki kodda uygulanmış bir yama geri alınmaktadır.
<?php
$yeni_dosya = 'my_script-1.1.php';
$yama = 'my_script.patch';
$hatalar = xdiff_file_patch($yeni_dosya, $yama, 'my_script-1.0.php', XDIFF_PATCH_REVERSE);
if (is_string($hatalar)) {
echo "Reddedilenler:\n";
echo $hatalar;
}
?>