19 namespace cogpowered\FineDiff\Render;
21 use cogpowered\FineDiff\Parser\OpcodeInterface;
25 public function callback($opcode, $from, $from_offset, $from_len)
27 if ($opcode ===
'c') {
28 $html = htmlentities(substr($from, $from_offset, $from_len));
29 }
else if ($opcode ===
'd') {
31 $deletion = substr($from, $from_offset, $from_len);
33 if (strcspn($deletion,
" \n\r") === 0) {
34 $deletion = str_replace(array(
"\n",
"\r"), array(
'\n',
'\r'), $deletion);
37 $html =
'<del>'.htmlentities($deletion).
'</del>';
40 $html =
'<ins>'.htmlentities(substr($from, $from_offset, $from_len)).
'</ins>';