BOM Remover

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

BOM Remover

Beitrag 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
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag 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
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Beitrag 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
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag 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 ...
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag 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]
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Antworten