Das Einzige, was ich zu diesen erstaunlichen Antworten hinzufügen würde, ist, dass Sie Ihre Dateien in UTF-8-Kodierung speichern sollten. Ich habe festgestellt, dass die Browser diese Eigenschaft eher akzeptieren als die Einstellung UTF-8 als Code-Kodierung. Jeder anständige Texteditor zeigt Ihnen dies an. Zum Beispiel, Notepad++ verfügt über eine Menüoption für die Dateikodierung, die Ihnen die aktuelle Kodierung anzeigt und es Ihnen ermöglicht, diese zu ändern. Für alle meine PHP-Dateien verwende ich UTF-8 ohne STÜCKLISTE .
Vor einiger Zeit hat mich jemand gebeten, UTF-8-Unterstützung für eine PHP- und MySQL-Anwendung hinzuzufügen, die von jemand anderem entwickelt wurde. Ich stellte fest, dass alle Dateien in ANSI kodiert waren, also musste ich ikonv um alle Dateien zu konvertieren, die Datenbanktabellen auf den Zeichensatz UTF-8 umzustellen und utf8_allgemein_ci collate, fügen Sie 'SET NAMES utf8' zur Datenbankabstraktionsschicht nach der Verbindung hinzu (wenn Sie 5.3.6 oder früher verwenden). Andernfalls müssen Sie charset=utf8 in der Verbindungszeichenfolge verwenden) und ändern Sie die String-Funktionen so, dass sie die entsprechenden PHP-Multibyte-String-Funktionen verwenden.
22 Stimmen
Hier ist eine Einführung in Kodierungen im Allgemeinen und Kodierungen in PHP im Besonderen: Was jeder Programmierer unbedingt über Kodierungen und Zeichensätze für die Arbeit mit Text wissen muss
0 Stimmen
Einige aktuelle Diskussionen über PHP 7 deuten darauf hin, dass es keine Änderungen an der "offiziell aufgegebenen" Position von 2010 gibt... Es gibt etwas mehr über "PHP7 und UTF-8"?
0 Stimmen
Dieses Problem ist weit verbreitet. Aber es gibt keine schnelle Lösung, Sie müssen Folgendes einrichten
utf-8
für jeden von ihnen einzeln - MySQL 5, PHP 5 ODER Apache 2.0 Stimmen
Die Zeitzone des Datenbankservers ist ebenfalls eine wichtige Einstellung, die gewählt werden muss. Ich empfehle, UTC (`set time_zone='+0:00`` für MySQL) als Server-Standard zu verwenden.