baumi's blog

baumi's personal blog … Linux, OS X, Windows, Random things, …

PHP, UltraEdit und UTF-8 Dateien

Warning: Cannot add header information – headers already sent

Diese Fehlermeldung kommt normalerweise, wenn man die header() Funktion aufruft, nachdem man schon HTML Text ausgegeben hat.

Es kann jedoch vorkommen, dass man definitiv KEINE Zeichen vorher ausgegeben hat, z.B.:

<?
header( “Location: http://www.b-nm.at”);
?>

Falls in dieser oder ähnlichen Situation der Fehler auftritt, könnte die Ursache der versteckte Byte-Order-Mark (kurz: BOM) am Anfang der Datei sein sein. Der BOM ist ein binärer Code der das Dateiformat bzw. dessen “Byte-Order” festlegen soll.

UltraEdit erkennt und versteckt automatisch den BOM-Header, was im Falle der PHP Dateien stören kann.

Konfiguration von UltraEdit zur Darstellung vom BOM:

Menü Advanced -> Configuration -> File Handling -> Unicode/UTF-8 Detection -> hier müssen alle Häkchen inaktiv sein

Weitere Infos zu BOM: http://en.wikipedia.org/wiki/Byte-order_mark

, ,

Leave a Reply