php中json_encode UTF-8中文乱码的更好解决方法_php技巧
最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,经验证这办法确实是有效果的,但是不知道为什么,代码在用过一段时间之后就不太管用了。以下是自己的解决json_encode的办法。有更好的方法请分享出来吧!
第一种:
这种简单的做一个代码转换,urlcode之后再返回所需数组
我代码这样就足够了。
代码如下 复制代码
public static function encodeOperations ($array) { foreach ((array)$array as $key => $value) { if (is_array($value)) { encodeOperations($array[$key]); } else { $array[$key] = urlencode(mb_convert_encoding($value,'UTF-8','GBK')); } } return $array; }
第二种:
这种是在网上看到的,然后就是有评论说会出现无限循环的问题,但是这显然很全面的,然后我测试之后也确实有,贴这里仅供参考
代码如下
/************************************************************** * * 使用特定function对数组中所有元素做处理 * @param string &$array 要处理的字符串 * @param string $tocode 编码后 * @param string $oldcode 编码前 * @param string $function 要执行的函数 * @return boolean $apply_to_keys_also 是否也应用到key上 * @return array $array 是否也应用到key上 * @access public * *************************************************************/ function encodeOperations (&$array, $function, $tocode=false,$oldcode=false,$apply_to_keys_also = false) { foreach ($array as $key => $value) { (www.jb51.net) if (is_array($value)) { encodeOperations($array[$key], $function, $apply_to_keys_also); } else { if($tocode&&$oldcode) { if(function_exists(mb_convert_encoding)) { $value = mb_convert_encoding($value,$tocode,$oldcode); }else{ return "error"; } } $array[$key] = $function($value); } if ($apply_to_keys_also && is_string($key)) { $new_key = $function($key); if ($new_key != $key) { $array[$new_key] = $array[$key]; unset($array[$key]); } } } return $array; } /****from:http://www.jb51.net/phper/31/66729.htm********************************************************** * * 将数组转换为JSON字符串(兼容中文) * @param array $array 要转换的数组 * @return string 转换得到的json字符串 * @access public * *************************************************************/ function JSON($array) { arrayRecursive($array, 'urlencode', true); $json = json_encode($array); return urldecode($json); }
对中文返回是null空的话我们需要进行字符转换成uft8或者先使用urlencode进行编译呼。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Methoden zur Lösung des chinesischen verstümmelten Problems von PHPDompdf PHPDompdf ist ein Tool zum Konvertieren von HTML-Dokumenten in PDF-Dateien. Es ist leistungsstark und einfach zu verwenden. Allerdings stößt man bei der Verarbeitung chinesischer Inhalte manchmal auf das Problem verstümmelter chinesischer Schriftzeichen. In diesem Artikel werden einige Methoden zur Lösung des Problems verstümmelter chinesischer Zeichen in PHPDompdf vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Bei der Verwendung von Schriftartdateien zur Verarbeitung chinesischer Inhalte besteht ein häufiges Problem darin, dass Dompdf standardmäßig keine chinesischen Inhalte unterstützt.

Die ultimative Methode zur Lösung des Problems verstümmelter chinesischer Zeichen in PyCharm erfordert spezifische Codebeispiele. Einführung: PyCharm ist eine häufig verwendete integrierte Entwicklungsumgebung (IDE) für Python und verfügt über leistungsstarke Funktionen und eine benutzerfreundliche Benutzeroberfläche Mehrheit der Entwickler. Wenn PyCharm jedoch chinesische Zeichen verarbeitet, kann es manchmal zu verstümmelten Zeichen kommen, was zu bestimmten Problemen bei der Entwicklung und beim Debuggen führt. In diesem Artikel wird vorgestellt, wie das chinesische verstümmelte Problem in PyCharm gelöst werden kann, und es werden spezifische Codebeispiele gegeben. 1. Richten Sie das Projekt ein

Häufige Gründe und Lösungen für verstümmelte chinesische Zeichen bei der MySQL-Installation MySQL ist ein häufig verwendetes relationales Datenbankverwaltungssystem. Bei der Verwendung kann es jedoch zu Problemen mit verstümmelten chinesischen Zeichen kommen, die Entwicklern und Systemadministratoren Probleme bereiten. Das Problem verstümmelter chinesischer Zeichen wird hauptsächlich durch falsche Zeichensatzeinstellungen, inkonsistente Zeichensätze zwischen dem Datenbankserver und dem Client usw. verursacht. In diesem Artikel werden die häufigsten Ursachen und Lösungen für verstümmelte chinesische Zeichen bei der MySQL-Installation ausführlich vorgestellt, um allen zu helfen, dieses Problem besser zu lösen. 1. Häufige Gründe: Zeichensatzeinstellung

Lösungen für die Ajax-Übertragung verstümmelter chinesischer Zeichen: 1. Legen Sie eine einheitliche Codierungsmethode fest. 3. Clientseitige Decodierung. 5. Verwenden Sie das JSON-Format. Detaillierte Einführung: 1. Legen Sie eine einheitliche Codierungsmethode fest, um sicherzustellen, dass der Server und der Client dieselbe Codierungsmethode verwenden. Unter normalen Umständen ist UTF-8 eine häufig verwendete Codierungsmethode, da es mehrere Sprachen und Zeichensätze unterstützen kann. 2. Serverseitige Codierung: Stellen Sie sicher, dass die chinesischen Daten mit der richtigen Codierungsmethode codiert und dann an den Client usw. übergeben werden.

Das Problem verstümmelter chinesischer Zeichen in PHP-Webseiten besteht darin, dass chinesische Zeichen in der Webseitenanzeige als verstümmelte Zeichen angezeigt werden. Diese Situation wird normalerweise durch eine inkonsistente Codierung verursacht oder der Zeichensatz ist nicht festgelegt. Um das Problem der verstümmelten chinesischen Zeichen in PHP-Webseiten zu lösen, müssen viele Aspekte berücksichtigt werden. Im Folgenden finden Sie einige gängige Lösungen und spezifische Codebeispiele. Legen Sie die PHP-Dateikodierung fest: Stellen Sie zunächst sicher, dass die Kodierung der PHP-Datei selbst UTF-8 ist. Sie können die UTF-8-Kodierung beim Speichern im Editor festlegen oder den folgenden Code zum festzulegenden Header der PHP-Datei hinzufügen die Kodierung: &l

Das Problem der verstümmelten chinesischen Linux-Zeichen ist ein Problem, auf das viele chinesische Benutzer bei der Verwendung von Linux-Systemen häufig stoßen. Der Hauptgrund für verstümmelte chinesische Schriftzeichen liegt darin, dass die vom Linux-System standardmäßig verwendete Zeichenkodierung UTF-8 ist, einige Software oder Anwendungen jedoch möglicherweise nicht mit der UTF-8-Kodierung kompatibel sind, was dazu führt, dass chinesische Schriftzeichen nicht korrekt angezeigt werden. Es gibt viele Möglichkeiten, dieses Problem zu lösen. Im Folgenden werden einige gängige Lösungen beschrieben und spezifische Codebeispiele bereitgestellt. Ändern Sie die Zeichenkodierungseinstellungen des Terminals: Die Zeichenkodierungseinstellungen des Terminals bestimmen, ob das Terminal korrekt funktioniert

Praktische Tipps zum schnellen Lösen chinesischer verstümmelter Zeichen in Eclipse erfordern spezifische Codebeispiele. Übersicht: Eclipse ist eine weit verbreitete integrierte Entwicklungsumgebung (IDE), die nicht nur die Entwicklung mehrerer Programmiersprachen, sondern auch mehrere Betriebssysteme unterstützt. Bei der Verwendung von Eclipse kann es jedoch manchmal vorkommen, dass wir auf das Problem verstümmelter chinesischer Zeichen stoßen, was zu Unannehmlichkeiten für unsere Entwicklungsarbeit führt. In diesem Artikel werden einige praktische Techniken vorgestellt, die uns helfen, das Problem der verstümmelten chinesischen Zeichen in Eclipse schnell zu lösen, und spezifische Codebeispiele angehängt werden. eins,

Eine effektive Methode, um verstümmelte chinesische Matplotlib-Zeichen schnell zu lösen: Matplotlib ist eine häufig verwendete Zeichenbibliothek in Python. Bei der Verwendung von Chinesisch für Anmerkungen und Anzeige treten jedoch häufig verstümmelte Zeichen auf. In diesem Artikel werden einige effektive Problemumgehungen vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Legen Sie die Schriftart fest. Standardmäßig verwendet matplotlib Systemschriftarten für die chinesische Anzeige. Allerdings enthalten Systemschriftarten häufig keine chinesischen Zeichen, sodass Sie die entsprechende chinesische Schriftart manuell festlegen müssen. Zuerst müssen Sie bestätigen, ob der Computer dies getan hat
