Maison > développement back-end > tutoriel php > Introduction à la façon dont PHP implémente json_decode sans échapper aux méthodes chinoises

Introduction à la façon dont PHP implémente json_decode sans échapper aux méthodes chinoises

巴扎黑
Libérer: 2023-03-15 06:42:02
original
2738 Les gens l'ont consulté

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 à

L'exemple de cet article décrit comment implémenter json_decode en PHP sans échapper au chinois. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

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

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);
Copier après la connexion

Pour la version PHP5.3, vous pouvez d'abord convertir les caractères au dessus de ASCII 127 en valeurs HTML pour éviter d'être transcodé par la fonction json_decode :

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');
}
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal