Hakuna matata!
Kann man dem mit einem trim abhelfen? Hab grade keine BOM zur Hand...
Nein, trim entfernt nur folgende Zeichen:
" " (ASCII 32 (0x20)), an ordinary space.
"\t" (ASCII 9 (0x09)), a tab.
"\n" (ASCII 10 (0x0A)), a new line (line feed).
"\r" (ASCII 13 (0x0D)), a carriage return.
"\0" (ASCII 0 (0x00)), the NUL-byte.
"\x0B" (ASCII 11 (0x0B)), a vertical tab.
Man könnte auf die Idee kommen, den zweite Parameter von (l)trim zu nutzen, um die BOM zu entfernen, etwa so:
$string = ltrim( $string , "\xEF\xBB\xBF");
Das wird aber nicht ordentlich funktionieren, denn ltrim() wird nach jedem dieser Bytes einzeln suchen und würde auch ein einsames "\0xBB"
am Anfang eines Strings abschneiden. In einem Unicode-String ohne BOM wäre das aber das Zeichen: »
--
“All right, then, I'll go to hell.” – Huck Finn