Heim  >  Artikel  >  Backend-Entwicklung  >  Wie löse ich den verstümmelten chinesischen Code in PHP JSON?

Wie löse ich den verstümmelten chinesischen Code in PHP JSON?

青灯夜游
青灯夜游Original
2020-07-16 14:23:583138Durchsuche

Wir wissen, dass bei der Verwendung der Ajax-Technologie zur Interaktion mit dem PHP-Backend häufig chinesische verstümmelte Zeichen auftreten. JSON, ein XML-ähnliches Datenaustauschformat, führt auch zu verstümmelten chinesischen Zeichen, wenn PHP zur Interaktion verwendet wird. Wie kann man also den chinesischen verstümmelten Code in PHP JSON lösen? Lassen Sie mich es Ihnen unten vorstellen.

Wie löse ich den verstümmelten chinesischen Code in PHP JSON?

Warum erscheint chinesischer verstümmelter Code, wenn PHP mit JSON interagiert?

Da JSON mit JS identisch ist, werden die Zeichen auf dem Client in der Form von UTF8 verarbeitet, dh die von der JSON-Übermittlung oder -Annahme zurückgegebenen Zeichen werden in der Form von UTF8 verarbeitet Wenn die Datenbankcodierung mit PHP interagiert und die PHP-Seitencodierung nicht das UTF8-Format verwendet, werden chinesische Zeichen verstümmelt, wenn PHP mit JSON interagiert. [Verwandte Empfehlungen: PHP-Tutorial]

Methoden zum Lösen chinesischer verstümmelter Zeichen in PHP JSON

Nachdem Sie den Grund kennen, warum chinesische verstümmelte Zeichen generiert werden Wenn PHP mit JSON interagiert, ist die endgültige Lösung tatsächlich viel einfacher.

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

Der einfachste Weg Um das verstümmelte chinesische PHP-JSON zu lösen, muss die Datenbankcodierung sichergestellt werden. PHP-Seitencodierung verwendet einheitlich das UTF8-Format. Für PHP-Anfänger ist es 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 verwendet, um mit dem Front-End zu interagieren JS, verwenden Sie json_encode. Vor der Funktion müssen Sie die URL-Funktion verwenden, um die URL zu codieren. Der JS-Client verwendet die JS-Funktion decodeURI (), um die URL zu decodieren, bevor die chinesischen Informationen gelesen werden.

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 3 zum Lösen von PHP-JSON-chinesischem verstümmeltem Code: Verwenden Sie die Konvertierungsfunktion für die String-Kodierung

Wenn die Datenbankkodierung und die PHP-Seitenkodierung aus verschiedenen Gründen inkonsistent sind, z vorhanden Die Datenbankkodierung verwendet GB2312. Bei der Interaktion mit JSON 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.

Bisher wurden drei Lösungen für verstümmelte chinesische Zeichen in PHP JSON eingeführt. Tatsächlich werden diese Methoden in der PHP-Entwicklung bei Interaktionen zwischen PHP und AJAX/JS grundsätzlich verwendet, wenn chinesische verstümmelte Zeichen auftreten Die Idee ist ähnlich.

Das obige ist der detaillierte Inhalt vonWie löse ich den verstümmelten chinesischen Code 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