Det løste problemet - det var vidst lige en misser ;)
Mit slutresultat er blevet:
//fundet på
http://dk.php.net/manual/en/function.mb-detect-encoding.php i kommentarerne.
function is_utf8($str) {
$c=0; $b=0;
$bits=0;
$len=strlen($str);
for($i=0; $i<$len; $i++){
$c=ord($str[$i]);
if($c > 128){
if(($c >= 254)) return "false";
elseif($c >= 252) $bits=6;
elseif($c >= 248) $bits=5;
elseif($c >= 240) $bits=4;
elseif($c >= 224) $bits=3;
elseif($c >= 192) $bits=2;
else return "false";
if(($i+$bits) > $len) return "false";
while($bits > 1){
$i++;
$b=ord($str[$i]);
if($b < 128 || $b > 191) return "false";
$bits--;
}
}
}
return "true";
}
function convert_utf8($filename) {
$fh = fopen($filename, "r");
$file_content = fread($fh, filesize($filename));
echo is_utf8($file_content);
if (is_utf8($file_content) == "false") {
$file_content = utf8_encode($file_content);
}
$fp = fopen($filename, 'w');
fwrite($fp, $file_content);
fclose($fp);
}
Så tjekker den lige om den er utf8 i forvejen, ellers kører den utf8_encode