Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist der Grund, warum gd2-chinesische verstümmelte Zeichen in PHP erscheinen?

Was ist der Grund, warum gd2-chinesische verstümmelte Zeichen in PHP erscheinen?

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-04-14 11:36:282003Durchsuche

Die Gründe, warum gd2-chinesische Zeichen in PHP angezeigt werden: 1. Die Kodierung des Servers unterscheidet sich von der Standardkodierung der Funktion „imagettftext()“ in gd2. Die Standardkodierung der Funktion ist UTF8; Die Bibliothek wählt nicht die richtige TTF-Schriftartdatei aus und gd2 gibt aus. Bei der Verwendung chinesischer Schriftzeichen muss die richtige Schriftartdatei ausgewählt werden.

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP Version 7.1, DELL G3-Computer.

Der Grund, warum PHP GD2 verstümmelte chinesische Zeichen generiert

1 Der Grund für die Servercodierung. Da die Standardcodierung des Zeichenfolgenparameters der Funktion imagettftext UTF8 ist, kann es bei Verwendung von gd2 zur Ausgabe von Bildern leicht zu einer Verstümmelung chinesischer Zeichen kommen, wenn die Servercodierung inkonsistent ist und die entsprechende Konvertierung des Zeichencodierungsformats nicht durchgeführt wird.

2. Die richtige TTF-Schriftartdatei ist nicht ausgewählt. Wenn Sie mit gd2 chinesische Zeichen ausgeben möchten, müssen Sie die richtige TTF-Schriftartdatei auswählen.

Lösung für den chinesischen verstümmelten Code von PHP GD2

Gemäß dem zuvor eingeführten Prinzip der Erzeugung von chinesischem verstümmeltem PHP GD2-Code ist die Methode zum Lösen des chinesischen verstümmelten Codes von PHP GD2 eigentlich sehr einfach.

1. Es wird empfohlen, dass die gesamte Website die UTF8-Kodierung verwendet. Wenn Sie bereits die GB2312- oder GBK-Kodierung verwenden, verwenden Sie bitte iconv oder eine benutzerdefinierte gb2312- und utf8-Konvertierungsfunktion, um die Zeichenkodierung zu konvertieren. Informationen zu den Konvertierungsfunktionen gb2312 und utf8 finden Sie unter So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der PHP-Ajax-Wertübertragung.

2. Wenn Sie gerade eine PHP-Umgebung erstellen, wird empfohlen, den Standardzeichensatz in der Apache-Konfigurationsdatei auf UTF8 zu ändern, also AddDefaultCharset UTF8.

3. Wenn die obige Methode nicht funktioniert, überprüfen Sie bitte, ob Sie beim Kompilieren von gd2 die Option –enable-gd-jis-conv hinzugefügt haben. Bitte brechen Sie diese Option ab und kompilieren Sie sie erneut . Ich habe diese Methode nicht überprüft. Es wird geschätzt, dass sie hauptsächlich zur Installation und Konfiguration der PHP-Umgebung unter Unix verwendet wird. Diese Situation tritt in der Windows-Umgebung im Allgemeinen nicht auf. Es scheint, dass die Standard-PHP-Konfigurationsdatei auskommentiert ist.

4. Ein weiterer Grund, warum bei Verwendung der PHP-GD-Bibliothek verstümmelte chinesische Zeichen generiert werden, ist, dass nicht die richtige TTF-Schriftart ausgewählt ist. Sie müssen eine Schriftart auswählen, die Chinesisch unterstützt. ttf.

OK, solange Sie die obige Methode befolgen, können Sie im Grunde den mit PHP GD2 generierten chinesischen verstümmelten Code lösen. Solange Sie sorgfältig prüfen, ist es tatsächlich sehr praktisch, die verstümmelten chinesischen Zeichen von gd2 zu lösen.

Empfohlenes Lernen: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Grund, warum gd2-chinesische verstümmelte Zeichen in PHP erscheinen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn