Bij de eerste blik op http://www.nicknettleton.com/ zine/php/php-utf-8-cheatsheet Ik denk dat er één belangrijk ding ontbreekt (misschien heb ik dit over het hoofd gezien). Afhankelijk van uw MySQL-installatie en/of configuratie moet u de verbindingscodering zo instellen dat MySQL weet welke codering u aan de clientzijde verwacht (dus de client kant van de MySQL-verbinding, wat uw PHP-script zou moeten zijn). U kunt dit doen door handmatig een
SET NAMES utf8
query voorafgaand aan elke andere query die u naar de MySQL-server verzendt.
Als je PDO aan de PHP-kant gebruikt, kun je de verbinding zo instellen dat deze vraag automatisch wordt verzonden bij elke (opnieuw) verbinding met
$db=new PDO($dsn, $user, $pass);
$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES utf8");
bij het initialiseren van uw db-verbinding.