<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Ce n'est pas lié au contenu de l'articlePHPExemple de code,Démontrer une traverse simple de traversée</span></span><span>
</span><span><span class="hljs-variable">$fruits</span></span><span> = [</span><span><span class="hljs-string">"pomme"</span></span><span>, </span><span><span class="hljs-string">"banane"</span></span><span>, </span><span><span class="hljs-string">"Tangerine"</span></span><span>];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$fruits</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$fruit</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"J'aime manger: "</span></span><span> . </span><span><span class="hljs-variable">$fruit</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
<h2>Comment le résoudre mysqli::</span><span><span class="hljs-variable constant_">character_set_name</span></span><span> Raisons courantes pour lesquelles le jeu de caractères obtenu ne correspond pas aux attentes?</h2>
<p>Utilisé PHP de <code>mysqli
Cela garantit que les jeux de caractères entre le client et le serveur sont cohérents.
Les bases de données et tables MySQL ont leurs propres paramètres de jeu de caractères. Si le jeu de caractères de connexion est défini correctement, mais que les jeux de caractères de la base de données ou de la table sont différents, des exceptions de lecture ou d'écriture de données peuvent se produire.
Solution: vérifiez le jeu de caractères de la base de données et des tables et utilisez les instructions SQL suivantes pour ajuster si nécessaire:
ALTER DATABASE your_db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MySQLI de PHP permet des connexions persistantes (P: Préfixe), mais les connexions persistantes peuvent entraîner une rafraîchissement correctement des paramètres des paramètres de caractères, entraînant des problèmes de jeu de caractères incohérents.
Solution: Évitez d'utiliser des connexions persistantes, ou appelez manuellement set_charset () après chaque utilisation de connexions persistantes pour assurer le jeu de caractères correct.
Le jeu de caractères par défaut des clients MySQL peut être affecté par des fichiers de configuration (tels que My.cnf ) ou des variables d'environnement, ce qui entraîne le jeu de caractères qui n'est pas la valeur attendue lorsqu'elle est connectée.
SOLUTION: Vérifiez et ajustez la configuration de MySQL Server Side and Client pour vous assurer que les ensembles de caractères par défaut du serveur de caractères , de Collation-Server et du client sont correctement définis.
Si le jeu de caractères utilisé est un codage multi -yte (tel que UTF8MB4) et n'est pas pris en charge par la configuration PHP ou MySQL, caractères_set_name () peut renvoyer des résultats inattendus.
Solution: Confirmez que la version MySQL prend en charge UTF8MB4, la version PHP et l'extension MySQLI prennent correctement en charge les jeux de caractères MultiByte et spécifient ce jeu de caractères lors de la connexion.
Lors de la rencontre du jeu de caractères renvoyé par mysqli :: caractères_set_name () ne correspond pas aux attentes, la première étape devrait être de s'assurer que set_charset () est appelé après l'établissement de la connexion, puis vérifiez les paramètres du jeu de caractères de la base de données et des tables, ainsi que la configuration du serveur et du client. Évitez les problèmes d'initialisation de l'ensemble de caractères causés par des connexions persistantes et confirmez la prise en charge du système pour les jeux de caractères multi-gytets. Grâce au dépannage et aux ajustements ci-dessus, le problème de l'incohérence dans la plupart des jeux de caractères peut être généralement résolu, garantissant l'exactitude des opérations de base de données et l'intégrité des données.
Étiquettes associées:
mysqli