(PECL xdiff >= 0.2.0)
xdiff_string_patch — Altera uma string com uma correção unificada
   Corrige uma string str com uma correção unificada no parâmetro patch
   e retorna o resultado. patch deve ser uma correção unificada criada pela
   função xdiff_file_diff()/xdiff_string_diff().
   Um parâmetro opcional flags especifica o modo de operação. Quaisquer
   partes rejeitadas da correção serão armazenadas dentro da variável error se
   forem fornecidas.
  
strA string original.
patchA string de correção unificada. Ela deve ser criada usando as funções xdiff_string_diff(), xdiff_file_diff() ou ferramentas compatíveis.
flags
       flags podem ser
       XDIFF_PATCH_NORMAL (modo padrão, correção normal)
       ou XDIFF_PATCH_REVERSE (correção reversa).
      
       A partir da versão 1.5.0, também pode-se usar a operação binária OR para habilitar o sinalizador
       XDIFF_PATCH_IGNORESPACE.
      
errorSe fornecido, as partes rejeitadas serão armazenadas dentro desta variável.
   Retorna a string corrigida ou false em caso de erro.
  
Exemplo #1 Exemplo de xdiff_string_patch()
O código a seguir aplica alterações a alguns artigos.
<?php
$old_article = file_get_contents('./old_article.txt');
$diff = $_SERVER['patch']; /* Digamos que alguém colou uma correção em um formulário HTML */
$errors = '';
$new_article = xdiff_string_patch($old_article, $diff, XDIFF_PATCH_NORMAL, $errors);
if (is_string($new_article)) {
    echo "Novo artigo:\n";
    echo $new_article;
}
if (strlen($errors)) {
    echo "Rejeições: \n";
    echo $errors;
}
?>