Heim > Artikel > Backend-Entwicklung > So lösen Sie verstümmelte chinesische Zeichen in PHP JSON
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.
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!