Maison > développement back-end > Problème PHP > Comment résoudre les caractères chinois tronqués en php json

Comment résoudre les caractères chinois tronqués en php json

王林
Libérer: 2023-03-06 06:46:02
original
2420 Les gens l'ont consulté

Solution aux caractères chinois tronqués dans php json : 1. Assurez-vous que l'encodage de la base de données et des pages php front-end et back-end sont cohérents ; 2. Utilisez les fonctions urlencode et decodeURL pour effectuer l'encodage d'URL ; 3. Utilisez la fonction d'encodage de chaîne pour effectuer l'encodage entre les jeux de caractères Convert.

Comment résoudre les caractères chinois tronqués en php json

Pourquoi le code chinois tronqué apparaît-il lorsque PHP interagit avec JSON ?

(Tutoriel recommandé : Tutoriel vidéo php )

Étant donné que JSON est le même que JS, les caractères sur le client sont traités sous forme d'UTF8, c'est-à-dire JSON est soumis ou accepté tel que renvoyé. Les caractères sont traités au format UTF8. Lors de l'interaction avec PHP, si l'encodage de la base de données et l'encodage des pages PHP n'utilisent pas le format UTF8, les caractères chinois seront tronqués lorsque PHP interagit avec JSON.

Solution :

Après avoir connu la raison pour laquelle l'interaction entre PHP et JSON produit des caractères chinois tronqués, la solution est en réalité beaucoup plus simple.

Méthode 1 pour résoudre le PHP JSON tronqué en chinois : assurez-vous que l'encodage des pages PHP de la base de données, du front et du backend est cohérent

Le moyen le plus simple de résoudre le PHP JSON tronqué en chinois est d'assurer l'encodage de la base de données, l'encodage des pages PHP utilise uniformément le format UTF8. Pour les débutants en PHP, il est préférable d'utiliser le format UTF8 pour la base de données lors de la création d'un site Web, ce qui peut réduire beaucoup de problèmes.

Méthode 2 pour résoudre le code chinois tronqué PHP JSON : configurer et utiliser la fonction PHP urlencode et la fonction JS decodeURI()

Lorsque PHP utilise JSON pour interagir avec le front-end JS, utilisez json_encode Avant la fonction, vous devez utiliser la fonction urlencode pour encoder l'URL. Le client JS utilise la fonction JS decodeURI() pour décoder l'URL avant de lire les informations chinoises.

Remarque : lorsque vous interagissez via JSON dans une page PHP, par exemple lors de la conversion d'un tableau au format JSON, utilisez d'abord la fonction urlencode pour encoder en URL la clé et la valeur du tableau, puis utilisez la fonction json_encode et la fonction urldecode.

Méthode 3 pour résoudre le code chinois tronqué PHP JSON : utilisez la fonction de conversion d'encodage de chaîne

Lorsque l'encodage de la base de données et l'encodage de la page PHP sont incohérents pour diverses raisons, telles que existant L'encodage de la base de données utilise GB2312. Lorsque vous interagissez avec JSON, vous devez utiliser la fonction de conversion d'encodage de chaîne pour convertir entre les jeux de caractères. Les fonctions couramment utilisées incluent iconv. Étant donné qu'iconv nécessite la prise en charge de l'environnement de configuration PHP, s'il n'est pas pris en charge, vous pouvez implémenter la conversion d'encodage en écrivant vos propres fonctions de conversion d'encodage gbk et UTF8.

Jusqu'à présent, les trois solutions aux caractères chinois tronqués dans PHP JSON ont été introduites. En fait, dans le développement PHP, lorsque l'on rencontre des interactions similaires entre PHP et AJAX/JS, ces méthodes sont essentiellement utilisées lorsque les caractères chinois sont tronqués. sont générés. L’idée est similaire.

Recommandations associées : formation php

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