PHP Fragezeichen statt Umlaute?
Guten Tag,
ich lese mit PHP eine .txt datei aus, dabei werden mir bei der Ausgabe die Umlaute durch Fragezeichen dargestellt. Habe schon viel über das Problem gelesen aber keine Lösung gefunden.
4 Antworten
Schau, dass die Textdatei im UTF-8-Format (Text Encoding) gespeichert ist und auch dein HTML-Dokument / PHP-Skript für die Ausgabe im Response Header UTF-8 definiert.
PHP (erste Angabe nach dem startenden Skript-Tag):
header('Content-Type: text/html; charset=utf-8');
HTML (im head):
<meta charset="utf-8" />
Bei Notepad++ gibt es da afair 2 Optionen, einmal einfach nur die Konvertierung umstellen (was du scheinbar benutzt hast) und einmal ein "Konvertiere zu UTF-8 ohne BOM", wenn du letzteres benutzt solltes es nach dem Speichern auch so bleiben.
Codierung auf UTF-8 wechseln oder Unicodes verwenden.
Siehe: http://designerzone.de/html-umlaute-und-sonderzeichen/
das liegt an der Codierung wenn man Latin und UTF8 oder andere codierungen einfach mischt.
Charset auf utf-8 oder iso 8559-1 oder wie auch immer das genau hiess setzen
Wenn ich bei Notepad++ die Kodierung auf UTF-8 ohne BOM einstelle und speichere und danach wieder öffne dann ist die Datei auf ANSI eingestellt.