Maison >développement back-end >tutoriel php >Pourquoi ma sortie MySQL JSON affiche-t-elle des valeurs NULL pour les champs de description ?
Sortie MySQL JSON : valeurs nulles cachées
Lors de l'utilisation de json_encode() pour convertir des données de base de données en JSON, des valeurs NULL inattendues peuvent survenir, ce qui gêne l'intégrité des données. Cet article explique pourquoi la description renvoie NULL dans l'extrait de code fourni et propose une solution pour résoudre le problème.
L'extrait de code récupère les enregistrements d'une table de base de données MySQL nommée staff et tente d'encoder les résultats au format JSON. Cependant, le champ de description renvoie NULL dans la sortie JSON, bien qu'il contienne des données dans la base de données.
La cause première de ce problème réside dans l'encodage des caractères. MySQL ne récupère peut-être pas les données en codage UTF-8, ce qui entraîne des incohérences de codage et des valeurs NULL pour les caractères non UTF-8.
Pour résoudre le problème, ajoutez mysql_query('SET CHARACTER SET utf8') avant le Requête SELECT. Ceci définit le jeu de caractères pour la connexion à la base de données, garantissant que les données sont récupérées en codage UTF-8.
Après avoir implémenté cette modification, json_encode() gérera correctement les caractères UTF-8 dans le champ de description, et le JSON la sortie représentera avec précision les données de la base de données.
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!