Maison >base de données >tutoriel mysql >Comment puis-je stocker et afficher des chaînes Unicode dans MySQL et PHP ?

Comment puis-je stocker et afficher des chaînes Unicode dans MySQL et PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-03 00:49:11553parcourir

How Can I Store and Display Unicode Strings in MySQL and PHP?

Stockage et affichage de chaînes Unicode (हिन्दी) Utilisation de PHP et MySQL

Pour stocker et afficher des chaînes Unicode telles que "सूर्योदय" dans une base de données MySQL et récupérer en utilisant PHP, suivez ces étapes :

Configuration de la base de données :

  • Créez une base de données avec encodage et classement UTF-8 (par exemple, UTF-8 general_ci) .
  • Ajoutez un champ VARCHAR à votre table avec le jeu de caractères UTF-8 propriété.

Stockage de la chaîne :

  • Insérez la chaîne Unicode directement dans la base de données à l'aide d'un script PHP.
  • Assurez-vous que votre script PHP définit les propriétés du jeu de caractères correctement :

    • mysql_set_charset('utf8'); avant d'exécuter votre requête
    • Utilisez utf8mb4 comme jeu de caractères pour une meilleure prise en charge d'Unicode

Récupération et affichage de la chaîne :

  • Utilisez mysql_query("SET NAMES utf8"); au début de votre script PHP pour définir le jeu de caractères pour la connexion.
  • Récupérez la chaîne de la base de données à l'aide d'une requête.
  • Pour afficher correctement la chaîne Unicode dans un navigateur Web, utilisez echo(utf8_decode($string)). Cela convertira la chaîne codée UTF-8 en caractères Unicode correspondants.

Conseils supplémentaires :

  • Définissez le type de contenu pour votre document HTML en UTF-8 en utilisant :

    • ou utilisez header('Content-Type: text/html; charset=utf-8') ; en PHP
  • Utilisez les fonctions PHP compatibles UTF-8 pour la manipulation de chaînes, telles que htmlentities() et htmlspecialchars().

Solution alternative :

  • Stockez la chaîne Unicode dans la base de données en tant que son homologue codé en UTF-8 (par exemple, सूर्योदय pour "सूर्योदय").
  • Récupérez le code encodé chaîne de la base de données, puis décodez-la pour l'afficher à l'aide de html_entity_decode().

Remarque :

L'exemple de script fourni utilise les anciennes fonctions mysql_. Pour les versions PHP plus récentes, utilisez les extensions mysqli ou PDO pour les interactions avec la base de données. La syntaxe sera légèrement différente, mais les principes généraux restent les mêmes.

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!

Déclaration:
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