Aller au contenu

Installation

phil/text-diff

Prérequis

PrérequisPourquoi
PHP 8.5 ou plus récentLes classes en lecture seule, les constantes typées, array_all()
ext-mbstringLes positions des changements comptées en points de code
phil/ujoLes documents comparés bloc par bloc, et leur rendu

Installation

composer require phil/text-diff

C'est une bibliothèque, pas un bundle : il n'y a rien à enregistrer. Construisez un TextDiff là où les différences sont affichées, une seule fois, et gardez-le ; il ne conserve aucun état entre deux comparaisons.

use Phil\TextDiff\TextDiff;

$differ = new TextDiff();          // at most 1000 edits searched for
$strict = new TextDiff(maxEdits: 200);

Dans une application Symfony, phil/text-diff-bundle l'enregistre comme service, avec les filtres Twig text_diff et text_diff_document et un contrôleur Stimulus qui parcourt les changements. Sans le bundle, déclarez-le comme service si plusieurs classes l'utilisent :

services:
    Phil\TextDiff\TextDiff: ~