Maison > base de données > tutoriel mysql > Comment encoder correctement les caractères UTF-8 avec json_encode() en PHP ?

Comment encoder correctement les caractères UTF-8 avec json_encode() en PHP ?

Mary-Kate Olsen
Libérer: 2024-10-30 16:28:03
original
688 Les gens l'ont consulté

How to Encode UTF-8 Characters Correctly with json_encode() in PHP?

Problèmes d'encodage des caractères UTF-8 avec json_encode()

Énoncé du problème

L'encodage des caractères UTF-8 pose problème avec la fonction json_encode() . Une fois que cette fonction a encodé les valeurs de LATIN1 en UTF-8, la sortie devient nulle.

Question

Comment json_encode() peut-il être utilisé pour encoder correctement les valeurs UTF-8, sans recourir à des tiers ? bibliothèques de fête comme Zend Framework ?

Réponse

Pour résoudre ce problème, suivez ces étapes :

  1. Créez un tableau vide : Initialisez un tableau $rows vide pour stocker l'ensemble de résultats encodé.
  2. Encoder les valeurs de ligne : Parcourez l'ensemble de résultats de la base de données, en convertissant les valeurs de chaque ligne en UTF-8 à l'aide de utf8_encode. Stockez les lignes encodées dans le tableau $rows.
  3. Encode et Echo JSON : Enfin, transmettez le tableau $rows à json_encode() et faites écho au résultat pour envoyer l'UTF-8 correctement encodé. valeurs au navigateur Web.

Voici un exemple d'extrait de code :

<code class="php">// Create an empty array for the encoded resultset
$rows = array();

// Loop over the db resultset and put encoded values into $rows
while($row = mysql_fetch_assoc($result)) {
  $rows[] = array_map('utf8_encode', $row);
}

// Output $rows
echo json_encode($rows);</code>
Copier après la connexion

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