Seite 1 von 1

BOM Remover

Verfasst: 14.08.2009 15:31
von Kukulkan
Hallo,

Ich habe dieses kleine Tool mit PureBasic geschrieben um den leidigen UTF-8 BOM Header bei PHP Dateien zu entfernen. Hintergrund ist, dass der Apache bei PHP Scripten mit UTF-8 BOM diesen sofort sendet und man dann beim setzen von zB Session-Cookies die Fehlermeldung "Warning: Cannot modify header information - headers already sent by..." bekommt.

Ich habe lange den Fehler gesucht bis ich rausgefunden habe, dass zwei oder drei Dateien meines Sources von irgend einem Editor mit einem UTF-8 BOM versehen wurden. Alle Anwendungen konnten Problemlos damit umgehen, nur der Apache bzw. PHP nicht...

Hier kann man es (neben meinen anderen Sachen) runterladen:
http://www.x-beliebig.info
Vielleicht ist es ja mal jemandem Nützlich...

Grüsse,

Volker

Verfasst: 14.08.2009 16:03
von ts-soft
> dass zwei oder drei Dateien meines Sources von irgend einem Editor mit einem UTF-8 BOM versehen wurden.
Alle meine Sourcen werden von der IDE mit diesem BOM versehen :mrgreen:
Normallerweise auch die sinnvollste Einstellung, jedenfalls solange man nicht
mit Indianern arbeiten muß :lol:

:allright: danke trotzdem, man weiß nie wozu das mal gut sein könnte.

Gruß

Thomas

Verfasst: 14.08.2009 16:34
von Kukulkan
Hi Thomas,
Alle meine Sourcen werden von der IDE mit diesem BOM versehen
Aber nicht PHP Sourcen, denn dann kannst Du nie mit Sessions oder anderen Header-Sachen arbeiten. Gibt auf jeden Fall Ärger... /:->

Aber dennoch werden auch meine Sourcen alle in UTF-8 gespeichert. Nur eben ohne BOM Header. Der ist ja laut Spezifikation für UTF-8 auch nur Optional und eigentlich nicht nötig.

Wikipedia ist da recht deutlich (Zitat):
While UTF-8 does not have byte order issues, a BOM encoded in UTF-8 may nonetheless be encountered. A UTF-8 BOM is explicitly allowed by the Unicode standard[1], but is not recommended[2], as it only identifies a file as UTF-8 and does not state anything about byte order.
danke trotzdem, man weiß nie wozu das mal gut sein könnte.
Bitteschön <)

Volker

Verfasst: 14.08.2009 16:52
von X360 Andy
Oder man speichert es einfach als UTF-8 ohne Bom :mrgreen: (Gängige Editoren können das )
Bild


Oder in ganz einfachen Editoren ( z.b WebFTP.de hat so einen )
Dort kann man auch jedes Zeichen sehen...

Aber auch diese PHP Fehlermeldung hat mich 3 Stunden meines Lebens gekostet :lol:


Trotzdem danke fürs Tool!
Vieleicht noch ein Gui basteln (z.b mit Drag n Drop ? )

Wäre viel praktischer ...

Verfasst: 14.08.2009 20:02
von bobobo
[klugscheiss]php-dateien werden vom webserver apache als html mit inkludiertem
php-code angenommen.
alles was da kein php ist wird an den browser geschickt und die erste
ausgabe erzeugt eben headerinfos.

das ist auch kein fehler.

sollte man eigentlich wissen (wurde aber bisher vom apache (bis einschl.2 glaub ich) auch nicht stringent umgesetzt.

mir hat deshalb schon eine leerzeile kurzweile gebracht. :wink:
[/klugscheiss]