Download the PHP package lolli42/finediff without Composer
On this page you can find all versions of the php package lolli42/finediff. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package finediff
FineDiff
FineDiff is a rather simple library to create HTML diff view of two strings:
Installation
Tags
- 1.1 Dropped PHP <8.2
- 1.0 Dropped PHP <7.2, has PHP >=7.2 support, added multibyte support, forces strict types, E_ALL error free
- <1.x is identical to cogpowered/finediff from (https://github.com/cogpowered/FineDiff)
Usage
Render the difference between two strings as HTML on a character basis:
Render the difference between two strings as HTML on a word basis:
Special characters and entities are quoted by HTML renderer and multibyte strings are handled:
Algorithm
To create a diff-view between two string, an intermediate "Opcode" representation is created that specifies the differences form string one to string two. The renderer then takes this opcode and creates HTML from it. Note the opcode string is considered internal and may change in a backwards breaking way with younger library releases.
Running tests
Full test run:
Restricting to single files:
Casual setup to run tests with xdebug (3.x) enabled, an IDE like phpstorm should then break point:
History
- Originally written by Raymond Hill (https://github.com/gorhill/PHP-FineDiff)
- Tweaked to bring it up to date with the modern world. That means documented, nicely formatted, tested code that can be easily extended by Rob Crowe (https://github.com/cogpowered/FineDiff)
- Added PHP 8 compatibility and multibyte string support by Christian Kuhn (https://github.com/lolli42/FineDiff)
License
MIT License. See LICENSE file.
All versions of finediff with dependencies
ext-mbstring Version *