xdiff_string_diff

(PECL xdiff >= 0.2.0)

xdiff_string_diffHacer un diff unificado de dos cadenas

Descripción

xdiff_string_diff ( string $old_data , string $new_data [, int $context = 3 [, bool $minimal = false ]] ) : string

Hace un diff unificado que contiene diferencias entre la cadena old_data y la cadena new_data y devuelve esta. El diff resultante es legible. Un parámetro opcional context especifica el número de líneas de contexto que hay que añadir alrededor de cada cambio. Establecer el parámetro minimal a true dará como resultado de salida el archivo parche más corto posible (puede tomar algo de tiempo).

Parámetros

old_data

Primera cadena con información. Esta actúa como "vieja" información.

new_data

Segunda cadena con información. Esta actúa como "nueva" información.

context

Indica el número de líneas de contexto que desea incluir en el diff resultado.

minimal

Establezca este parámetro a TRUE si desea reducir el tamaño del resultado (puede tomar algo de tiempo).

Valores devueltos

Returns string with resulting diff or FALSE if an internal error happened.

Ejemplos

Ejemplo #1 Ejemplo de xdiff_string_diff()

El siguiente código hace un diff unificado de dos artículos.

<?php
$old_article 
file_get_contents('./old_article.txt');
$new_article $_REQUEST['article']; /* Supongamos que alguien pega un nuevo artículo en formato html */

$diff xdiff_string_diff($old_article$new_article1);
if (
is_string($diff)) {
    echo 
"Diferencias entre los dos artículos:\n";
    echo 
$diff;
}

?>

Notas

Nota:

Esta función no funciona bien con cadenas binarias. Para hacer un diff de cadena binaria utilice xdiff_string_bdiff()/xdiff_string_rabdiff().

Ver también