Я использую php-diff, который является отличным инструментом для разграничения через Интернет с очень хорошим выходом, когда файлы разные.php-diff - показать «нет различий», если 2 файла идентичны
Проблема, с которой я сталкиваюсь, заключается в том, что, когда 2 файла идентичны, никакого вывода вообще нет.
код я использую в соответствии с примером по ссылке выше с использованием «бок о бок» выход:
$a = explode("\n", file_get_contents(dirname(__FILE__).'/a.txt'))
$b = explode("\n", file_get_contents(dirname(__FILE__).'/b.txt'));
require_once dirname(__FILE__).'/../lib/Diff/Renderer/Html/SideBySide.php';
$options = [];
$diff = new Diff($a, $b, $options);
$renderer = new Diff_Renderer_Html_SideBySide;
echo $diff->Render($renderer);
Предположим содержимое a.txt
и b.txt
идентичны. Если я var_dump($diff)
, он показывает объект, который содержит содержимое обоих файлов, и свойства class Diff
.
Проблема в том, что в $diff
ничего не найдено, что я могу использовать для определения того, идентичны ли файлы, потому что $diff->Render
только выводит что-либо, когда есть различия.
Кто-нибудь знает, как можно изменить это, чтобы включить что-то, даже простое сообщение, например «никаких различий между этими файлами».
Не можете вы просто присвоить его переменной и проверить, если переменная пуста? Если пусто, вы эхо «нет различий между этими файлами», иначе вы эхо разницу? –