Så sniger der sig lige lidt ind fra arbejdslivet. Dette er et script jeg har skrevet i php, der kan fjerne byte order mark(BOM) fra ens utf-8 filer. Lige nu tager den bare imod et enkelt filnavn, men det kan let udvides så den læser et helt directory igennem og fjerne BOM fra alle filerne. Scriptet fjerner kun utf-8 BOM og ikke andet data, så der burde ikke være noget fare ved at køre det igennem på en række filer uanset om de har BOM eller ej.
$file = "SKRIV FILNAVN HER!";
$contents = file_get_contents($file);
$contents = unpack("H*", $contents);
$contents = chunk_split($contents[1], 6, " ");
if(strpos($contents, "efbbbf") == 0)
{
$contents = str_replace("efbbbf", "", $contents);
}
$contents = str_replace(" ", "", $contents);
$contents = pack("H*", $contents);
file_put_contents($file, $contents);