Er zijn meerdere faalpunten bij het werken met UTF8:
-
zorg ervoor dat de tabel utf8 is
Gebruik SQL-commando
Show Variables;
om de MySQL-tekeninstellingen voor de tabel te controleren. -
ingevoegde gegevens zijn utf8
U kunt tools zoals phpMyAdminer . proberen of Beheerder om te controleren of de
gegevens correct zijn ingevoerd. Probeer handmatig gegevens in te voegen via de tool. Gebruik bij het invoegen via script geen standaard tekenreeksfuncties. Gebruik altijd hun mbstringalternatives. Stelmb_internal_encoding( 'UTF-8' );
om PHP intern UTF-8 te laten afhandelen. -
opgehaalde gegevens zijn utf8
Ik zou alleen
$pdo->exec("SET NAMES utf8");
gebruiken en laat de rest vallen. OmdatSET NAMES x
is gelijk aanSET character_set_client = x; SET character_set_results = x; SET character_set_connection = x;
-
weergegeven gegevens zijn utf8
Als dit wordt weergegeven op een html-pagina, vergeet dan niet de metatag of header in te stellen
"Content-Type: text/html; charset=utf-8"
.