(PECL xdiff:0.2-1.4)
xdiff_string_patch — Patche une chaîne avec un diff unifié
Patche la chaîne str avec le patch unifié contenu dans la chaîne patch .
La chaîne originale.
Le patch unifié.
flags peut être soit XDIFF_PATCH_NORMAL (mode par défaut, patch normal), soit XDIFF_PATCH_REVERSE (patch inversé).
Si error est fourni, les parties rejetées y seront stockées.
Retourne la chaîne patchée, ou FALSE si une erreur survient.
Exemple #1 Exemple avec xdiff_string_patch()
Le code suivant applique les changements à des articles.
<?php
$old_article = file_get_contents('./old_article.txt');
$diff = $_SERVER['patch']; /* disons que quelqu'un a passé un patch via un formulaire html */
$errors = '';
$new_article = xdiff_string_patch($old_article, $diff, XDIFF_PATCH_NORMAL, $errors);
if (is_string($new_article)) {
echo "Nouvel article :\n";
echo $new_article;
}
if (strlen($errors)) {
echo "Rejets : \n";
echo $errors;
}
?>