Maison >base de données >tutoriel mysql >Pourquoi les caractères Unicode s'affichent-ils sous forme de points d'interrogation en PHP et comment y remédier ?
Affichage des données Unicode en PHP
Lorsque vous traitez des données Unicode en PHP, il est courant de rencontrer des problèmes d'affichage incorrect. L'un de ces cas est l'incapacité d'afficher correctement les caractères Unicode.
Problème :
Le code fourni tente d'afficher les données Unicode d'une base de données MySQL, mais il affiche des caractères incorrects sous forme de points d'interrogation. .
Solution :
Pour résoudre ce problème, il est nécessaire de définir l'encodage des caractères à la fois pour le client et les résultats dans MySQL. Cela garantit que PHP peut décoder et afficher correctement les caractères Unicode. Voici le code modifié :
<code class="php">mysql_query("set character_set_client='utf8'"); mysql_query("set character_set_results='utf8'");</code>
Cela définit les jeux de caractères client et résultat sur UTF-8, permettant à PHP d'interpréter et d'afficher correctement les données Unicode.
Problème d'origine :
Le code d'origine ne précisait pas l'encodage des caractères, ce qui entraînait un affichage incorrect des caractères Unicode. En définissant explicitement l'encodage, PHP peut gérer les données de manière appropriée.
Considérations supplémentaires :
En fonction de la configuration de votre base de données, vous devrez peut-être également définir le classement sur utf8_general_ci pour garantir un codage correct. traitement des données Unicode. Ceci peut être réalisé avec la requête suivante :
<code class="php">mysql_query("set collation_connection='utf8_general_ci'");</code>
Ces ajustements garantissent que PHP peut afficher les données Unicode avec précision.
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!