function diff_render($txt1,$txt2,$style) {
//Hvis txt1 er tom returner da blot txt2
if (!isset($txt1) || strlen($txt1) == 0) {
return $txt2;
}
//Hvis txt2 er tom, returner den
if (!isset($txt2) || strlen($txt2) == 0) {
return $txt2;
}
//Hvis der ingen forskel er på de to tekster, returnér
if ($txt1 == $txt2) {
return $txt2;
}
//Inkluder horde filerne
//(Det kan sikkert gøres smartere med noget autoload)
require "Horde/Text/Diff.php";
require "Horde/Text/Diff/Op/Base.php";
require "Horde/Text/Diff/Renderer.php";
require "Horde/Text/Diff/Renderer/Inline.php";
require "Horde/Text/Diff/Engine/Native.php";
require "Horde/Text/Diff/Op/Copy.php";
require "Horde/Text/Diff/Op/Change.php";
require "Horde/Text/Diff/Op/Delete.php";
require "Horde/Text/Diff/Op/Add.php";
require "Horde/String.php";
$txt1Ary = explode("\n",$txt1);
$txt2Ary = explode("\n",$txt2);
//Udfør diff
$diff = new Horde_Text_Diff('auto',array($txt1Ary, $txt2Ary));
//Formater med html
$renderer = new Horde_Text_Diff_Renderer_inline(array('ins_prefix' => '<span style="'.$style.'">','ins_suffix' => '</span>'));
//Returner det endelige resultat
return $renderer->render($diff);
}