Originally written by Raymond Hill (https://github.com/gorhill/PHP-FineDiff)
composer require d4h/finediffRender the difference between two strings as HTML:
$diff = new FineDiff\Diff();
echo $diff->render('string one', 'string two');This would then output:
string <ins>tw</ins>o<del>ne</del>You could change the granularity to CogPowered\FineDiff\Granularity\Word
$diff = new FineDiff\Diff(new FineDiff\Granularity\Word());
// Or via the setter method:
$diff->setGranularity(new FineDiff\Granularity\Word());so the output is:
string <del>one</del><ins>two</ins>You do this by passing it into the Diff constructor:
Opcode instructions are what tell FineDiff how to change one string into another.
$diff = new FineDiff\Diff();
echo $diff->getOpcodes('string one', 'string two');This would then output:
c7d3i3:twoRender text using the opcodes:
$renderer = new FineDiff\Render\Text();
echo $renderer->process('string one', 'c7d3i3:two');Would output:
string twoSame with HTML:
$renderer = new FineDiff\Render\Html();
echo $renderer->process('string one', 'c7d3i3:two');Sponsored by D4H.