(PECL xdiff >= 0.2.0)
xdiff_string_patch — Bir dizgeyi bir tekil fark dizgesi ile yamar
Belirtilen tekil fark dizgesi yama ile dizge dizgesini yamar ve sonucu döndürür. 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. Reddedilen yama parçaları, belirtildiği takdirde hata değişkeninde döndürülür.
Yamanacak dizge.
xdiff_string_diff() ve xdiff_file_diff() işlevleriyle veya uygun araçlarla üretilmiş tekil yama dizgesi.
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.
Sağlandığı takdirde, reddedilen yama parçaları bu değişkende döndürülür.
Hata oluşursa FALSE yoksa yamanmış dizgeyi döndürür.
Örnek 1 - xdiff_string_patch() örneği
Aşağıdaki kodda bir makaleye değişiklikler uygulamaktadır.
<?php
$eski_makale = file_get_contents('./old_article.txt');
/* Yamanın HTML forma yapıştırıldığı varsayılıyor */
$fark = $_SERVER['yama'];
$hatalar = '';
$yeni_makale = xdiff_string_patch($eski_makale, $fark,
XDIFF_PATCH_NORMAL, $hatalar);
if (is_string($yeni_makale)) {
echo "Yeni makale:\n";
echo $yeni_makale;
}
if (strlen($hatalar)) {
echo "Reddedilenler: \n";
echo $hatalar;
}
?>