Heim  >  Artikel  >  Backend-Entwicklung  >  So lösen Sie das chinesische verstümmelte Problem von PHP Ajax

So lösen Sie das chinesische verstümmelte Problem von PHP Ajax

藏色散人
藏色散人Original
2020-11-09 09:11:402205Durchsuche

Lösung für verstümmelte chinesische Zeichen in PHP Ajax: 1. Alle Daten verwenden UTF-8-Kodierung, einschließlich Datenbankkodierung, PHP-Kodierung und Front-End-Kodierung. 2. Verwenden Sie die arrayRecursive-Methode, um jedes Zeichen separat zu kodieren.

So lösen Sie das chinesische verstümmelte Problem von PHP Ajax

Empfohlen: „PHP-Video-Tutorial

php Chinesisches verstümmeltes Problem mit Ajax

In PHP extrahieren wir nach dem Extrahieren von Daten aus der Datenbank im Allgemeinen mehrere Datenzeilen gleichzeitig Wenn Ajax für die Interaktion mit dem Backend verwendet wird, kann PHP nur ein Datensignal ausgeben, wir haben jedoch mehrere Daten, sodass nur ein Array übergeben werden kann. Dies bedeutet, dass die Funktion json_encode() verwendet wird Um die Daten zu konvertieren, konvertieren Sie sie in JSON-Daten.

Schauen wir uns an, wie man ein

php-Array konvertiert:

Zuerst erstellen wir zwei neue Arrays in PHP, eines enthält Chinesisch, das andere enthält Zahlen oder Englisch, und werfen einen Blick auf die endgültige Ausgabe. Idee: Die zugehörigen Werte sind intuitiver Arrays gleichzeitig in einem Array speichern und gleichzeitig ausgeben

$gg=array('a'=>'中国','b'=>'日本','c'=>'美国','d'=>'加拿大','e'=>'法国');
$yy=array('f'=>'6','g'=>'7','h'>='8','i'=>'tom','j'=>'kevin');

Ausgabe Das Ergebnis ist wie folgt:

echo $json=json_encode($gg);

Wir können sehen, dass die Daten nach der Formatierung des Arrays im Array in JSON in [] platziert werden. eckige Klammern, und die Arrays darin stehen in {}-Klammern, aber es ist immer noch verstümmelt.

Um das Problem verstümmelter Zeichen anzugehen, gibt es zwei Methoden:

Methode 1: Alle Daten verwenden UTF-8-Kodierung, einschließlich Kodierung aus der Datenbank, PHP-Kodierung und Front-End-Kodierung.

Methode 2: Verwenden Sie die folgenden zwei Funktionen, um jedes Zeichen separat zu kodieren: (Einige Symbole scheinen erfolgreich maskiert zu werden, daher wird die Verwendung dieser Methode nicht empfohlen)

{"a":"\u4e2d\u56fd","b":"\u65e5\u672c","c":"\u7f8e\u56fd","d":"\u52a0\u62ff\u5927","e":"\u6cd5\u56fd"}

                                                                  Nach Verwendung dieser beiden Funktionen lautet das Ausgabeergebnis:

echo $json=json_encode(array($gg,$yy));

Das obige ist der detaillierte Inhalt vonSo lösen Sie das chinesische verstümmelte Problem von PHP Ajax. 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