So konvertieren Sie PHP-JSON in Chinesisch: 1. Urlencodieren Sie das chinesische Feld. 2. Verwenden Sie die Funktion json_encode zum Codieren. 3. Verwenden Sie urldecode, um das Ergebnis zu verarbeiten.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, Dell G3-Computer
Wie konvertiere ich PHP-JSON in Chinesisch? Wie konvertiert PHP normalerweise Zeichenfolgen im JSON-Format? Unten:
$arr = ['a', 'b', 'c'];echo json_encode($arr);
Nach dem Login kopieren
Die Ausgabe lautet:
["a","b","c"]
Nach dem Login kopieren
Wenn wir jedoch chinesische Zeichen in das Array einfügen, treten Probleme auf:
$arr = [ '世界', '你好',];echo json_encode($arr);
Nach dem Login kopieren
Das Ausgabeergebnis lautet:
["\u4e16\u754c","\u4f60\u597d"]
Nach dem Login kopieren
Dieses Ergebnis ist offensichtlich nicht das, was wir wollen, aber warum ist das so? passieren? Denn wenn unser Wert Chinesisch enthält und PHP eine JSON-Codierung durchführt, führt die unterste Ebene eine Unicode-Codierung für Chinesisch durch, was dazu führt, dass das Ergebnis nicht lesbar ist.
Wie kann man das Problem lösen?
Methode 1
Sie können die Methoden urlencode und urldecode verwenden, um den Prozess der Transkodierung in Unicode zu umgehen. Zuerst urlenkodieren Sie das chinesische Feld, dann json_encode und schließlich verwenden Sie urldecode, um das Ergebnis zu verarbeiten, damit Chinesisch normal angezeigt werden kann. Der spezifische Code lautet wie folgt:
$arr = [ '世界', '你好',];echo urldecode(json_encode(array_map('urlencode', $arr)));
Nach dem Login kopieren
Das Ausgabeergebnis ist:
["世界","你好"]
Nach dem Login kopieren
Nach dem Login kopieren
Methode 2
Seit der PHP5.4-Version hat der Beamte eine neue Option zu Json hinzugefügt: JSON_UNESCAPED_UNICODE. Nach dem Hinzufügen dieser Option wird Chinesisch nicht automatisch codiert. Der spezifische Code lautet wie folgt:
$arr = [ '世界', '你好',];echo json_encode($arr, JSON_UNESCAPED_UNICODE);
Nach dem Login kopieren
Die Ausgabe lautet:
["世界","你好"]
Nach dem Login kopieren
Nach dem Login kopieren
Sehen Sie, das ist das Ergebnis, das wir wollen:)
Hinweis
Was wir beachten müssen, ist, dass json_encode und json_decode nur utf-8 unterstützen codierte Zeichen. Wenn Sie die JSON-Funktion für GBK-Zeichen verwenden möchten, müssen Sie diese konvertieren.
Empfohlenes Lernen: „
PHP-Video-Tutorial
“
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie PHP JSON in Chinesisch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!