(PECL xdiff >= 0.2.0)
xdiff_string_diff — Faz uma diferença unificada entre duas strings
$old_data,$new_data,$context = 3,$minimal = false
Cria uma diferença unificada contendo as diferenças entre a string old_data e a string
new_data e o retorna. A diferença resultante é legível por humanos.
Um parâmetro opcional context especifica quantas linhas de contexto devem ser
adicionadas em torno de cada alteração. Definir o parâmetro minimal
como verdadeiro resultará na saída do menor arquivo de patch possível (pode levar muito tempo).
old_dataPrimeira sequência com dados. Atua como dados "antigos".
new_dataSegunda sequência com dados. Atua como dados "novos".
contextIndica quantas linhas de contexto você deseja incluir no resultado da diferença.
minimal
Defina este parâmetro como true se quiser minimizar o tamanho do
resultado (pode levar muito tempo).
Retorna uma string com a diferença resultante ou false se ocorrer um erro interno.
Exemplo #1 Exemplo de xdiff_string_diff()
O código a seguir faz uma comparação unificada de dois artigos.
<?php
$old_article = file_get_contents('./old_article.txt');
$new_article = $_REQUEST['article']; /* Digamos que alguém colou um novo artigo em um formato HTML */
$diff = xdiff_string_diff($old_article, $new_article, 1);
if (is_string($diff)) {
echo "Diferenças entre dois artigos:\n";
echo $diff;
}
?>Nota:
Esta função não funciona bem com strings binárias. Para obter diferenças de strings binárias, use xdiff_string_bdiff()/xdiff_string_rabdiff().