Wie kann ich eine Textdatei ENCODING (zum Beispiel UTF-8) in PHP setzen?
Lass mich dir mein Problem zeigen. Das ist mein Code:
%Vor% Ausgabe: اÙ
!
fwrite()
hat die gleiche Ausgabe.
Aber wenn ich test.txt
mit Notepad erstelle und den Zeichensatz UTF-8 setze, ist die Ausgabe das, was ich möchte.
Ich möchte den Zeichensatz in der PHP-Datei setzen.
Nun ist das meine Frage: Wie setze ich Textdateicodierung durch PHP?
Beim Speichern von Text in einer Datei wendet PHP keine Codierung an: Es speichert Daten genau so, wie sie in der Zeichenkette angeordnet sind.
Sie erwähnen, dass Sie Probleme beim Öffnen der Datei in notepad.exe
haben. Dieser Text-Editor ist nicht sehr gut darin, die Kodierung der zu öffnenden Datei zu erraten. Wenn der Text in UTF-8 codiert ist, müssen Sie ihn als UTF-8 öffnen. Verwenden Sie nach Möglichkeit einen anderen Texteditor. Notepad ++ ist ein beliebter Ersatz.
Wenn Sie notepad.exe
als letzten Ausweg verwenden müssen, schreiben Sie eine Byte Order Mark in die Datei vor Ihnen schreibe noch etwas anderes; Dadurch erkennt es die Datei als UTF-8 und macht die Datei möglicherweise für andere Zwecke unbrauchbar (siehe Wikipedia-Artikel für Details).
Sie können dies mit mb_convert_encoding
versuchen %Vor%Überprüfen Sie auch iconv .
Update: (versuchen Sie dies und finden Sie die richtige Codierung für Ihren Text)
%Vor%Versuchen Sie es auch auf GitHub .
Tags und Links php character-encoding utf-8 encoding text