Maison > développement back-end > tutoriel php > Comment puis-je corriger les caractères tronqués (comme « ÃƒÂ® ») causés par un encodage UTF-8 mal formé dans PHP et MySQL ?

Comment puis-je corriger les caractères tronqués (comme « ÃƒÂ® ») causés par un encodage UTF-8 mal formé dans PHP et MySQL ?

Mary-Kate Olsen
Libérer: 2024-12-04 20:58:11
original
509 Les gens l'ont consulté

How Can I Fix Garbled Characters (like

Correction de l'encodage UTF-8 mal formé

Dans les environnements PHP 5 et MySQL, l'encodage UTF-8 corrompu peut se manifester par des caractères tronqués comme "à®". Pour résoudre ce problème, envisagez d'utiliser les stratégies suivantes :

Résolution du classement de la base de données :

  • Assurez-vous que le classement de la base de données est défini sur "utf8_general_ci" ou un classement similaire compatible UTF-8.

Vérification de PHP Configuration :

  • Confirmez que le script PHP inclut un en-tête UTF-8 approprié, tel que « Content-Type : text/html; charset=UTF-8 ».

Vérification des paramètres de l'éditeur de texte :

  • Configurer le Bloc-notes pour utiliser l'encodage UTF-8 sans la marque d'ordre des octets (BOM).

Mappage des caractères corrompus :

  • Créez une fonction personnalisée qui identifie et remplace les séquences de caractères corrompues (par ex. , "î") avec leur UTF-8 correct équivalents.

Utilisation du vidage/restauration de la base de données :

  • Effectuez un vidage complet de la base de données à l'aide de la commande suivante :
mysqldump -h DB_HOST -u DB_USER -p DB_PASSWORD --opt --quote-names \
    --skip-set-charset --default-character-set=latin1 DB_NAME > DB_NAME-dump.sql
Copier après la connexion
  • Restaurez la base de données en utilisant ce qui suit command :
mysql -h DB_HOST -u DB_USER -p DB_PASSWORD \
    --default-character-set=utf8 DB_NAME < DB_NAME-dump.sql
Copier après la connexion

Notez que cette solution est plus efficace dans les cas de caractères UTF-8 à double codage (par exemple, guillemets intelligents, tirets, etc.). Il est essentiel de vérifier les problèmes d'encodage de caractères spécifiques à votre cas avant d'appliquer des correctifs.

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 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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal