Maison > Article > développement back-end > Résoudre le problème de transcodage chinois json_encode
Lors du développement d'interfaces, il est souvent utilisé pour renvoyer des données json. Il existe une fonction json_encode en php pour convertir le tableau au format de données json, mais avez-vous déjà rencontré si le tableau. contient En chinois, les données renvoyées sont vides. Deux solutions sont écrites ci-dessous
La première méthode
Urlencode chinois, s'il existe des tableaux à plusieurs chiffres de cette manière, Problème
function encode_json($str) { return urldecode(json_encode(url_encode($str))); } function url_encode($str) { if(is_array($str)) { foreach($str as $key=>$value) { $str[urlencode($key)] = url_encode($value); } } else { $str = urlencode($str); } return $str; }
La deuxième façon
Ajoutez le paramètre JSON_UNESCAPED_UNICODE Notez qu'il doit être php5.4 ou version ultérieure pour l'utiliser
json_encode($arr,JSON_UNESCAPED_UNICODE);
J'utilise. Habituellement, il y a plusieurs paramètres
$data_string=json_encode($para,JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE);
J'écris cet article pour me rappeler ce problème
Cet article provient du site Web php chinois, tutoriel php colonne, bienvenue pour apprendre !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!