2013-02-20 3 views
0

Я хотел бы написать веб-интерфейс, который показывает различия между двумя очень большими файлами. Обычно я использую winmerge, но это означает, что мне нужно войти в сервер, скопировать файлы и затем сравнить их. Мне слишком много шагов по душе. Я хочу написать веб-интерфейс, который в основном делает то же самое. Кто-нибудь знает о хорошей надежной php-библиотеке, которая делает что-то вроде этого? Имейте в виду, что эти файлы длиной 20k, поэтому они должны быть надежными, а не очень быстро.выделить различия между очень большими файлами с php

+5

и что вы пробовали? –

+0

В настоящее время я делаю то, что было предложено Аманданом. Запуск системной команды и отображение результатов с некоторым форматированием. Похоже, что пользователям не нравится форматирование, и я подумал, что там должна быть библиотека, которая делает это для меня. Сравнение бок о бок с линиями, смещенными всегда, соответствует самой востребованной функции, и я не хотел «изобретать колесо». – Renzosilv

ответ

2

Используйте системную команду diff, затем проанализируйте результаты. Формат регулярный и простой в определении.

0

Чтобы добавить к идее Amadan в:

Создайте HTML-форму с двумя полями ввода file и использовать следующие:

echo exec('diff ' . $_FILES['file1']['tmp_name'] . ' ' . $_FILES['file2']['tmp_name']); 
+0

'exec' возвращает только последнюю строку, так что это не будет работать очень хорошо. Вы либо хотите, чтобы обратные шаги, команда 'system' (без' echo' в этом случае) или использовали второй параметр 'exec'. Кроме того, я бы ненавидел простой вывод 'diff' на веб-странице, если бы я был использован для WinMerge - таким образом,« проанализируйте результаты ». – Amadan

+0

Я просто копал немного глубже, я согласен со всеми вашими точками. Если бы он не знал, как выполнить системную команду из PHP, это даст ему то, что ему нужно. Очевидно, что результат должен быть проанализирован и подготовлен для веб-страницы. –

Смежные вопросы