Maison  >  Article  >  développement back-end  >  Explication détaillée de la façon d'implémenter json_decode sans échapper au chinois en PHP

Explication détaillée de la façon d'implémenter json_decode sans échapper au chinois en PHP

墨辰丷
墨辰丷original
2018-05-22 14:30:492665parcourir

Cet article présente principalement la méthode PHP pour implémenter json_decode sans échapper au chinois, et combine le formulaire d'exemple avec une analyse détaillée des techniques de fonctionnement spécifiques et des précautions associées pour les versions php5.4+ et 5.3 pour implémenter json_decode sans échapper au chinois. Ce qui est nécessaire Les amis peuvent se référer à

pour plus de détails comme suit :

Par défaut, la méthode json_decode de PHP échappera aux caractères spéciaux et convertira le chinois en forme d'encodage Unicode.

Cela rend la visualisation du texte dans la base de données fastidieuse. Il faut donc limiter la fuite des Chinois.

Pour la version PHP5.4+, le deuxième paramètre de la fonction json_decode peut être utilisé pour limiter la plage d'échappement.

Pour limiter le chinois, utilisez le paramètre JSON_UNESCAPED_UNICODE.

json_encode($a, JSON_UNESCAPED_UNICODE);

Pour la version PHP5.3, vous pouvez d'abord convertir les caractères supérieurs à ASCII 127 en valeurs HTML pour éviter la fonction json_decode transcodage :

function my_json_encode($arr)
{
    //convmap since 0x80 char codes so it takes all multibyte codes (above ASCII 127). So such characters are being "hidden" from normal json_encoding
    array_walk_recursive($arr, function (&$item, $key) { if (is_string($item)) $item = mb_encode_numericentity($item, array (0x80, 0xffff, 0, 0xffff), 'UTF-8'); });
    return mb_decode_numericentity(json_encode($arr), array (0x80, 0xffff, 0, 0xffff), 'UTF-8');
}

Recommandations associées :

php implémente l'interface de l'application et renvoie la méthode de json data

getJSON( ) Le serveur de requêtes asynchrone renvoie les données au format json (tutoriel graphique)

Objet JSON en JS détaillé explication des étapes de définition et de mise en œuvre de la valeur

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn