Heim php教程 php手册 PHP5.4中json_encode中文转码的变化[让json更懂中文]

PHP5.4中json_encode中文转码的变化[让json更懂中文]

Jun 13, 2016 am 10:54 AM
encode json php5.4 中文 Tun 变化 existieren von 转码

在php5.4以前做json_encode的时候中文会被unicode编码,中文都会被编码, 变成不可读的, 类似“\u***”的格式, 还会在一定程度上增加传输的数据量。

 

例如:

 

$str = '中文';

echo json_encode($str);

//"\u4e2d\u6587"

 

php5.4开始

echo json_encode($str, JSON_UNESCAPED_UNICODE);  

//"中文"

php5.4让json更懂中文!

 

5.4之前不进行unicode转码,有3种方法处理:

 

PHP5.4中json_encode中文转码的变化让json更懂中文

 

但其实前两种方式是会导致问题,在一些特殊的情况下。如下例:

 

function myjson($code) {

    $code = json_encode(urlencodeAry($code));

    return urldecode($code);

}

 

function urlencodeAry($data) {

    if(is_array($data)) {

        foreach($data as $key=>$val) {

            $data[$key] = urlencodeAry($val);

        }

        return $data;

    } else {

        return urlencode($data);

    }

}

 

$test = array (

    0 => '"大连周水子机场"→人民路',

    1 => '运营时间:5:10~21:00 票价:16元 发车间隔20分钟一班,客满随时发车',

);

 

/*

通过常规则的json_encode|json_decode来编解码

["\"\u5927\u8fde\u5468\u6c34\u5b50\u673a\u573a\"\u2192\u4eba\u6c11\u8def","\u8fd0\u8425\u65f6

\u95f4\uff1a5\uff1a10\uff5e21\uff1a00 \u7968\u4ef7\uff1a16\u5143 \u53d1\u8f66\u95f4\u969420

\u5206\u949f\u4e00\u73ed\uff0c\u5ba2\u6ee1\u968f\u65f6\u53d1\u8f66"]

array (

  0 => '"大连周水子机场"→人民路',

  1 => '运营时间:5:10~21:00 票价:16元 发车间隔20分钟一班,客满随时发车',

)

*/

$test1 = json_encode($test);

$test2 = json_decode($test1, TRUE);

echo $test1;

echo PHP_EOL;

var_export($test2);

echo PHP_EOL;

 

/*

通过myjson|json_decode来编解码,但是会出报错json_last_error返回(JSON_ERROR_SYNTAX === 4),

因为""大连周水子机场"→人民路"

[""大连周水子机场"→人民路","运营时间:5:10~21:00 票价:16元 发车间隔20分钟一班,客满随时发车"]

NULL

*/

$test1_1 = myjson($test);

$test2_1 = json_decode($test1_1, TRUE);

echo $test1_1;

echo PHP_EOL;

var_export($test2_1);

echo PHP_EOL;

 

/*

通过json_enco+pack|json_decode来编解码,保证不会对中文编码,但是会缺少运营时间数据和票价

["\"大连周水子机场\"→人民路","运营时间::~: 票价:元 发车间隔分钟一班,客满随时发车"]

array ( www.2cto.com

  0 => '"大连周水子机场"→人民路',

  1 => '运营时间::~: 票价:元 发车间隔分钟一班,客满随时发车',

)

*/

function replaceUni($str) {

    return preg_replace("#\\\u([0-9a-f]+)#ie", "iconv('UCS-2', 'UTF-8', pack('H4', '\\1'))", $str);

}

$test1_2 = replaceUni(json_encode($test));

$test2_2 = json_decode($test1_2, TRUE);

echo $test1_2;

echo PHP_EOL;

var_export($test2_2);

echo PHP_EOL;

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So stellen Sie Chinesisch im Handyspiel Call of Duty: Warzone ein So stellen Sie Chinesisch im Handyspiel Call of Duty: Warzone ein Mar 22, 2024 am 08:41 AM

Call of Duty Warzone ist ein neu eingeführtes Handyspiel. Viele Spieler sind sehr neugierig, wie sie die Sprache dieses Spiels auf Chinesisch einstellen können. Tatsächlich ist es sehr einfach, das chinesische Sprachpaket herunterzuladen Den detaillierten Inhalt erfahren Sie in dieser Einführung in die chinesische Einstellungsmethode. So stellen Sie die chinesische Sprache für das Handyspiel Call of Duty: Warzone ein 1. Rufen Sie zunächst das Spiel auf und klicken Sie auf das Einstellungssymbol in der oberen rechten Ecke der Benutzeroberfläche. 2. Suchen Sie in der angezeigten Menüleiste die Option [Herunterladen] und klicken Sie darauf. 3. Wählen Sie auf dieser Seite [SIMPLIFIEDCHINESE] (vereinfachtes Chinesisch), um das Installationspaket für vereinfachtes Chinesisch herunterzuladen. 4. Kehren Sie zu den Einstellungen zurück

Wie stelle ich eine Excel-Tabelle so ein, dass Chinesisch angezeigt wird? Tutorial zum Wechseln der chinesischen Bedienung in Excel Wie stelle ich eine Excel-Tabelle so ein, dass Chinesisch angezeigt wird? Tutorial zum Wechseln der chinesischen Bedienung in Excel Mar 14, 2024 pm 03:28 PM

Excel-Tabelle ist eine der Office-Software, die viele Benutzer verwenden, da ihr Computer ein Win11-System ist und daher die englische Benutzeroberfläche angezeigt wird. Sie möchten auf die chinesische Benutzeroberfläche umsteigen, wissen aber nicht, wie man sie bedient Um dieses Problem zu lösen, ist der Herausgeber hier, um die Fragen aller Benutzer zu beantworten. Werfen wir einen Blick auf den Inhalt des heutigen Software-Tutorials. Anleitung zum Umstellen von Excel auf Chinesisch: 1. Rufen Sie die Software auf und klicken Sie links in der Symbolleiste oben auf der Seite auf die Option „Datei“. 2. Wählen Sie „Optionen“ aus den unten aufgeführten Optionen. 3. Nachdem Sie die neue Benutzeroberfläche aufgerufen haben, klicken Sie links auf die Option „Sprache“.

Wird wwe2k24 Chinesisch haben? Wird wwe2k24 Chinesisch haben? Mar 13, 2024 pm 04:40 PM

„WWE2K24“ ist ein von Visual Concepts entwickeltes Rennsportspiel, das am 9. März 2024 offiziell veröffentlicht wurde. Dieses Spiel wurde hoch gelobt und viele Spieler sind gespannt, ob es eine chinesische Version geben wird. Leider hat „WWE2K24“ bisher noch keine chinesische Sprachversion veröffentlicht. Wird wwe2k24 auf Chinesisch sein? Antwort: Chinesisch wird derzeit nicht unterstützt. Die Standardversion von WWE2K24 in der chinesischen Steam-Region kostet 199 Yuan, die Deluxe-Version 329 Yuan und die Gedenkausgabe 395 Yuan. Das Spiel stellt relativ hohe Konfigurationsanforderungen und es gibt bestimmte Standards in Bezug auf Prozessor, Grafikkarte oder laufenden Speicher. Offizielle empfohlene Konfiguration und Einführung in die Mindestkonfiguration:

Einrichten von Chinesisch mit VSCode: Die vollständige Anleitung Einrichten von Chinesisch mit VSCode: Die vollständige Anleitung Mar 25, 2024 am 11:18 AM

VSCode-Setup auf Chinesisch: Eine vollständige Anleitung In der Softwareentwicklung ist Visual Studio Code (kurz VSCode) eine häufig verwendete integrierte Entwicklungsumgebung. Für Entwickler, die Chinesisch verwenden, kann die Einstellung von VSCode auf die chinesische Schnittstelle die Arbeitseffizienz verbessern. In diesem Artikel erhalten Sie eine vollständige Anleitung, die detailliert beschreibt, wie Sie VSCode auf eine chinesische Schnittstelle einstellen, und spezifische Codebeispiele bereitstellt. Schritt 1: Laden Sie das Sprachpaket herunter und installieren Sie es. Klicken Sie nach dem Öffnen von VSCode auf links

Tipps zur Leistungsoptimierung für die Konvertierung von PHP-Arrays in JSON Tipps zur Leistungsoptimierung für die Konvertierung von PHP-Arrays in JSON May 04, 2024 pm 06:15 PM

Zu den Leistungsoptimierungsmethoden für die Konvertierung von PHP-Arrays in JSON gehören: Verwendung von JSON-Erweiterungen und der Funktion json_encode(); Verwendung von Puffern zur Verbesserung der Leistung der Schleifencodierung; JSON-Codierungsbibliothek.

Tipps zum Lösen verstümmelter chinesischer Zeichen beim Schreiben von TXT-Dateien mit PHP Tipps zum Lösen verstümmelter chinesischer Zeichen beim Schreiben von TXT-Dateien mit PHP Mar 27, 2024 pm 01:18 PM

Tipps zum Lösen chinesischer verstümmelter Zeichen, die von PHP in TXT-Dateien geschrieben wurden. Mit der rasanten Entwicklung des Internets wird PHP als weit verbreitete Programmiersprache von immer mehr Entwicklern verwendet. Bei der PHP-Entwicklung ist es häufig erforderlich, Textdateien zu lesen und zu schreiben, einschließlich TXT-Dateien, die chinesische Inhalte schreiben. Aufgrund von Problemen mit dem Codierungsformat erscheint die chinesische Schrift jedoch manchmal verstümmelt. In diesem Artikel werden einige Techniken zur Lösung des Problems chinesischer verstümmelter Zeichen, die von PHP in TXT-Dateien geschrieben werden, vorgestellt und spezifische Codebeispiele bereitgestellt. Problemanalyse in PHP, Text

So stellen Sie den Quark-Browser auf Chinesisch ein und wie stellen Sie die chinesische Übersetzung ein So stellen Sie den Quark-Browser auf Chinesisch ein und wie stellen Sie die chinesische Übersetzung ein Mar 12, 2024 pm 02:10 PM

Die Quark-Browser-Software bietet unzählige Ressourceninformationen und verfügt über eine leistungsstarke integrierte Suchmaschine. Sie können die entsprechenden Antworten durch die Eingabe von Schlüsselwörtern finden. Die Suchbereiche in verschiedenen Bereichen sind geöffnet. Alle lästigen Werbe-Popups werden blockiert. Sie können dort frei zwischen den verschiedenen Suchmodi wechseln Es gibt keinerlei Verzögerungen im Prozess, und natürlich kann die Übersetzungsfunktion problemlos aktiviert werden, und es gibt keine Probleme bei der Kommunikation. Dateien und Dokumente, die mit verschiedenen Formaten kompatibel sind, können geöffnet werden Jetzt durchsucht der Herausgeber Quark online im Detail. Serverbenutzer bringen die Methode zum Einstellen der chinesischen Übersetzung mit. 1. Klicken Sie zunächst auf den Mobiltelefon-Desktop

Wie ändere ich Google Chrome in den chinesischen Modus? Wie ändere ich Google Chrome in den chinesischen Modus? Mar 13, 2024 pm 07:31 PM

Wie ändere ich Chinesisch in Englisch in Google Chrome? Einige Freunde möchten Google Chrome auf Englisch einstellen, damit sie während der Nutzung ihr Englisch kontinuierlich verbessern können. Wie stellt man es also auf Englisch ein? Google Chrome ist standardmäßig auf Chinesisch eingestellt. Im Folgenden zeige ich Ihnen, wie Sie die Sprache von Google Chrome auf Englisch einstellen. Einstellungsschritte: 1. Öffnen Sie [Google Chrome], wie in der Abbildung unten gezeigt. 2. Klicken Sie auf das Menü [drei Punkte] in der oberen rechten Ecke der Google Chrome-Benutzeroberfläche, wie in der Abbildung unten gezeigt. 3. Nachdem Sie die Menüseite aufgerufen haben, suchen Sie nach [Einstellungen], wie in der Abbildung unten gezeigt. 4. Nachdem Sie die Einstellungsseite aufgerufen haben, klicken Sie auf die Option [Sprache], wie in der Abbildung unten gezeigt. 5. Wählen Sie in der Sprachoberfläche [Sprache hinzufügen] aus, wie in der Abbildung unten gezeigt.

See all articles