Найди отличия между двумя HTML-файлами - PullRequest
1 голос
/ 12 ноября 2009

Есть ли способ отобразить различия между двумя документами HTML?

Существует класс PHP с именем daisdiff, но у него нет документации. Может кто-нибудь показать, как его использовать, или какой-либо альтернативы?

Ответы [ 3 ]

2 голосов
/ 12 ноября 2009

Я советую вам использовать пакет pear Text_Diff , пакет поставляется с некоторым классом и легко расширяемым, вы можете написать свой собственный "diff" рендер, так что его легко адаптировать и намного проще, чем разбирать вывод команды diff.

здесь фрагмент кода для сравнения двух текстовых файлов:

include_once "Text/Diff.php";
include_once "Text/Diff/Renderer.php";

// define files to compare
$file1 = "data1.txt";
$file2 = "data2.txt";

// perform diff, print output
$diff = &new Text_Diff(file($file1), file($file2));
$renderer = &new Text_Diff_Renderer();
echo $renderer->render($diff);
0 голосов
/ 12 ноября 2009

Вот чистая реализация php для diff, http://www.holomind.de/phpnet/diff.src.php. Если вы перейдете к нижней части страницы, есть пример того, как ее использовать.

0 голосов
/ 12 ноября 2009

Существует UNIX-программа под названием diff, предназначенная именно для этой цели. Вы используете это так:

diff -crB file1 file2

c обозначает контекст. Вокруг измененных линий отображаются некоторые дополнительные линии, чтобы их было легче найти.

r означает рекурсивный. Таким образом, вы можете указать каталоги как file1 и file2, при этом все файлы в них будут сравниваться друг с другом.

B заставляет игнорировать пустые строки и их изменения.

Позвольте мне найти решение для Windows на всякий случай.

...