Heim  >  Artikel  >  Backend-Entwicklung  >  So lösen Sie verstümmelte chinesische Zeichen in PHP JSON

So lösen Sie verstümmelte chinesische Zeichen in PHP JSON

王林
王林Original
2020-09-28 09:36:442384Durchsuche

Lösung für verstümmelte chinesische Zeichen in PHP JSON: 1. Stellen Sie sicher, dass die Codierung der Datenbank sowie der Front-End- und Back-End-PHP-Seiten konsistent ist. 2. Verwenden Sie die Funktionen urlencode und decodeURL, um die URL-Codierung durchzuführen String-Kodierungsfunktion zum Konvertieren zwischen Zeichensätzen.

So lösen Sie verstümmelte chinesische Zeichen in PHP JSON

Warum erscheinen verstümmelte chinesische Zeichen, wenn PHP mit JSON interagiert?

(Empfohlenes Tutorial: php-Video-Tutorial)

Da JSON mit JS identisch ist, werden Zeichen für den Client in der Form von UTF8 verarbeitet, d. h. die durch JSON-Übermittlung oder -Akzeptanz zurückgegebenen Zeichen werden im Formular verarbeitet von UTF8 bei der Interaktion mit PHP. Wenn die Datenbankkodierung und die PHP-Seitenkodierung nicht das UTF8-Format verwenden, werden chinesische Zeichen verstümmelt, wenn PHP mit JSON interagiert.

Lösung:

Nachdem wir den Grund kennen, warum die Interaktion zwischen PHP und JSON chinesische verstümmelte Zeichen erzeugt, ist die Lösung tatsächlich viel einfacher.

Methode 1 zum Lösen des chinesischen verstümmelten Codes in PHP JSON: Stellen Sie sicher, dass die Codierung der Datenbank sowie der Front-End- und Back-End-PHP-Seiten konsistent ist

Der einfachste Weg, den chinesischen verstümmelten PHP JSON zu lösen, besteht darin, sicherzustellen Stellen Sie sicher, dass die Datenbankkodierung und die PHP-Seitenkodierung einheitlich im UTF8-Format vorliegen. Für den Einstieg in PHP ist es für Lernende am besten, beim Erstellen einer Website das UTF8-Format für die Datenbank zu verwenden, was viele Probleme reduzieren kann.

Methode 2 zum Lösen von PHP-JSON-chinesischem verstümmeltem Code: Konfigurieren und verwenden Sie die PHP-Funktion urlencode und die JS-Funktion decodeURI()

Wenn PHP JSON für die Interaktion mit Front-End-JS verwendet, müssen Sie die URL-Funktion zur Ausführung der URL verwenden Codierung vor der Verwendung der json_encode-Funktion. In JS verwendet der Client die JS-Funktion decodeURI(), um die URL zu decodieren und dann die chinesischen Informationen zu lesen.

Hinweis: Wenn Sie über JSON in einer PHP-Seite interagieren, z. B. ein Array in das JSON-Format konvertieren, verwenden Sie zuerst die Funktion urlencode, um den Array-Schlüssel und -Wert per URL zu codieren, und verwenden Sie dann die Funktionen json_encode und urldecode.

Methode Drei zum Lösen von verstümmeltem PHP-JSON-Chinesischcode: Verwenden Sie die Konvertierungsfunktion für die Zeichenfolgencodierung.

Wenn die Datenbankcodierung und die PHP-Seitencodierung aus verschiedenen Gründen inkonsistent sind, z. B. weil die vorhandene Datenbankcodierung GB2312 verwendet, verwenden Sie die JSON-Interaktion In diesem Fall müssen Sie die Konvertierungsfunktion für die Zeichenfolgenkodierung verwenden, um zwischen Zeichensätzen zu konvertieren. Zu den häufig verwendeten Funktionen gehört iconv. Da iconv Unterstützung für die PHP-Konfigurationsumgebung erfordert, können Sie die Codierungskonvertierung implementieren, indem Sie Ihre eigenen GBK- und UTF8-Codierungskonvertierungsfunktionen schreiben.

An dieser Stelle wurden die drei Lösungen für verstümmelte chinesische Zeichen in PHP JSON vorgestellt. Tatsächlich werden diese Methoden bei der Interaktion zwischen PHP und AJAX/JS grundsätzlich verwendet, wenn chinesische verstümmelte Zeichen generiert werden Ideen sind ähnlich.

Verwandte Empfehlungen: php-Training

Das obige ist der detaillierte Inhalt vonSo lösen Sie verstümmelte chinesische Zeichen in PHP JSON. 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