Fonctions xdiff
PHP Manual

xdiff_string_diff

(PECL xdiff >= 0.2.0)

xdiff_string_diffCréé un diff unifié entre deux chaînes

Description

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

Crée un diff unifié contenant les différences entre la chaîne old_data et la chaîne new_data et retourne le diff ainsi créé. Le diff résultant est humainement lisible. Le paramètre optionnel context spécifie le nombre de lignes de contexte à ajouter autour de chaque modification. Le fait de définir le paramètre minimal à TRUE fera que le diff sera le plus petit possible (peut prendre du temps).

Liste de paramètres

old_data

Première chaîne de données. Ce sont les anciennes données.

new_data

Seconde chaîne de données. Ce sont les nouvelles données.

context

Indique le nombre de lignes de contexte que vous voulez inclure dans le diff résultant.

minimal

Configurez minimal à TRUE si vous voulez minimaliser la taille du diff (peut prendre beaucoup de temps).

Valeurs de retour

Retourne une chaîne représentant le diff résultant, ou FALSE si une erreur interne survient.

Exemples

Exemple #1 Exemple avec xdiff_string_diff()

Le code suivant effectue un diff de deux articles.

<?php
$old_article 
file_get_contents('./old_article.txt');
$new_article $_REQUEST['article']; /* disons que quelqu'un a posté un nouvel article via un formulaire html */

$diff xdiff_string_diff($old_article$new_article1);
if (
is_string($diff)) {
    echo 
"Différences entre les deux articles :\n";
    echo 
$diff;
}

?>

Notes

Note:

Cette fonction ne fonctionne pas correctement avec des chaînes binaires. Pour effectuer un diff de chaînes binaires, utilisez la fonction xdiff_string_bdiff()/ xdiff_string_rabdiff().

Voir aussi


Fonctions xdiff
PHP Manual