Lorsque vous utilisez des bases de données MySQL, le stockage des caractères Emoji peut parfois entraîner des défis. Cet article fournira une solution complète à ce problème, garantissant que vous pouvez gérer facilement les données emoji.
Lors de l'insertion d'un caractère emoji dans une base de données MySQL à l'aide d'un classement par défaut de utf8mb4_general_ci, cela peut entraîner l'erreur suivante :
1366 Valeur de chaîne incorrecte : 'xF0x9Fx98x83xF0x9F...' pour la colonne 'commentaire' à la ligne 1
Pour stocker efficacement les caractères emoji dans MySQL, suivez ces étapes :
Modifiez le classement par défaut de la base de données en utf8mb4. Cette action permet à la base de données de gérer un plus large éventail de jeux de caractères, y compris les caractères emoji.
Pour la table spécifique dans laquelle vous avez l'intention de stocker des caractères emoji, définissez le classement sur CHARACTER SET utf8mb4 COLLATE utf8mb4_bin.
Lors de l'exécution de requêtes impliquant des caractères emoji, utilisez la requête optimisée suivante :
ALTER TABLE Tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
Assurez-vous que le code définit explicitement le jeu de caractères sur utf8mb4 lors de l'établissement d'une connexion à la base de données :
$database_connection = new mysqli($server, $user, $password, $database_name); $database_connection->set_charset('utf8mb4');
En mettant en œuvre ces solutions, vous réussirez à stocker et récupérez les caractères emoji dans votre base de données MySQL, éliminant ainsi les erreurs de valeur de chaîne incorrecte et permettant une gestion transparente de ces caractères spéciaux.
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!