megabgg/php-project-lvl2

Difference calculator - second project on hexlet

v1.3-stable 2022-03-04 12:42 UTC

This package is auto-updated.

Last update: 2025-03-04 20:02:31 UTC


README

Actions Status

Вычислитель отличий - второй проект профессии "Php разработчик" учебной платформы Хекслет. Целью данного проекта является реализация библиотеки, с возможностью использовать ее как самостоятельной утилиты, для нахождения различий между файлами.

Поддерживаемые форматы:

  • yml
  • json

(форматы можно комбинировать)

Установка:

$ composer require megabgg/php-project-lvl2

Использование как CLI приложения:

Утилита поддерживает следующие форматы генерации отчета:

Stylish

Отображение различий в виде дерева (работает рекурсивно).

$ bin/gendiff pathToFile1 pathToFile2 --type stylish

Пример работы: asciicast


Plain

Отображение различий в плоском формате.

$ bin/gendiff pathToFile1 pathToFile2 --type plain

Пример работы: asciicast

Json

Отображение различий в формате json.

$ bin/gendiff pathToFile1 pathToFile2 --type json

Пример работы: asciicast


Если флаг --format не указан, используется формат отчета по умолчанию - Plain.

Использование как библиотеки:

<?php
use function CalcDiff\genDiff;
$format = 'plain'; // plain | stylish | json
$diff = genDiff($pathToFile1, $pathToFile2, $format);
print_r($diff);