Guten Abend!
Ich bin grad dabei von der Standard ISO Kodierung auf utf-8 umzusteigen, da xhtml sich besser damit macht ;)
Ich nutze zum Entwickeln Zend Studio, welches utf-8 Kodierung nur ohne BOM unterstützt.
Um den Internet Explorer auch meine Seiten zu zeigen, verzichte ich auf die XML Deklaration; eine meta Angabe möchte ich nur notfalls einfügen (es sollte auch ohne funktionieren).
Nun weiß ich, dass die Kodierung vom HTTP Header abhängt, dieser sendet auf meinem Testserver allerdings keine Kodierung (1).
Somit bleibt als einzige Möglichkeit (bisher) zu erkennen, welche Kodierung da ist, indem der Browser sich die Datei ansieht. Es scheint aber, dass weder Firefox noch IE utf-8 kodierte Dateien erkennen, wenn kein BOM dabei ist. Da ich aber nur ungern meinen Editor wechseln möchte und BOM manchmal Probleme machen könnte (2), möchte ich darauf verzichten BOM zu verwenden.
Wie würdet ihr jetzt empfehlen, die Datei als utf-8 erkennbar zu machen bzw. wie macht ihr es selber?
Soll ich per .htaccess den ContentType für .html und .css ändern, und in der php.ini einstellen, dass die Dateien als utf-8 gesendet werden? Reicht dazu die AddDefaultCharset-Direktive von Apache?
Vielen Dank für jede Antwort
Patrick
-----
Anhang:
(1) Beispiel Header:
-----
Date: Tue, 24 Jul 2007 19:54:59 GMT
Server: Apache/2.2.4 (Win32) PHP/5.2.3
Last-Modified: Tue, 24 Jul 2007 19:40:36 GMT
Etag: "12d65-3a9b-913fa087"
Accept-Ranges: bytes
Content-Length: 15003
Content-Type: text/html
200 OK
(2) http://www.w3.org/International/questions/qa-utf8-bom