2
2
3
3
Highlight diffs provided by Sebastian Bergmann diff
4
4
5
+ [ ![ Build Status] ( https://travis-ci.org/sokil/php-diff.svg?branch=master )] ( https://travis-ci.org/sokil/php-diff )
6
+
5
7
## Installation
6
8
7
9
```
@@ -13,10 +15,78 @@ composer.phar require sokil/php-diff
13
15
``` php
14
16
<?php
15
17
18
+ use Sokil\Diff\Change;
19
+ use Sokil\Diff\Renderer;
20
+
16
21
$diffRenderer = new Renderer();
17
- $actualDiff = $diffRenderer->render(
22
+ $actualDiff = $diffRenderer->render(new Change(
18
23
implode(PHP_EOL, ['line1', 'line2', 'line3']),
19
24
implode(PHP_EOL, ['line1', 'line2changed', 'line3'])
20
- );
25
+ ));
26
+
27
+ ```
28
+
29
+ ## Format of diff output
30
+
31
+ Format of diff tags may be configured. By default renders only two tags: ` <ins> ` and ` <del> ` . To
32
+ highlight output, use predefined format:
33
+
34
+ ``` php
35
+ <?php
36
+ $renderer = new Renderer([
37
+ 'format' => Renderer::FORMAT_COLOUR
38
+ ]);
39
+ ```
40
+
41
+ This will produce following HTML:
42
+
43
+ ``` html
44
+ line1
45
+ <del style =" background : #ffe7e7 ;" >line2</del >
46
+ <ins style =" background : #ddfade ;" >line2changed</ins >
47
+ line3
48
+ ```
49
+
50
+ To fully customize style, use next syntax (this format has alias ` Renderer::FORMAT_COLOUR ` ):
51
+
52
+ ``` php
53
+ <?php
54
+ $renderer = new Renderer([
55
+ 'format' => [
56
+ 'insert' => [
57
+ 'tag' => 'ins',
58
+ 'attributes' => 'style="background: #ddfade;"',
59
+ ],
60
+ 'delete' => [
61
+ 'tag' => 'del',
62
+ 'attributes' => 'style="background: #ffe7e7;"',
63
+ ]
64
+ ]
65
+ ]);
66
+
67
+ // this is same to
68
+ $renderer = new Renderer([
69
+ 'format' => Renderer::FORMAT_COLOUR
70
+ ]);
71
+ ```
72
+
73
+ Default format ` Renderer::FORMAT_DEFAULT ` has following notation:
74
+
75
+ ``` php
76
+ <?php
77
+ $renderer = new Renderer([
78
+ 'insert' => [
79
+ 'tag' => 'ins',
80
+ ],
81
+ 'delete' => [
82
+ 'tag' => 'del',
83
+ ]
84
+ ]);
21
85
86
+ // this is same to
87
+ $renderer = new Renderer([
88
+ 'format' => Renderer::FORMAT_DEFAULT
89
+ ]);
22
90
```
91
+
92
+ You can omit any
0 commit comments