sql >> Base de Datos >  >> RDS >> Mysql

Mejores prácticas en PHP y MySQL con cadenas internacionales

En el primer vistazo a http://www.nicknettleton.com/ zine/php/php-utf-8-cheatsheet Creo que falta una cosa importante (tal vez pasé por alto esta). Dependiendo de su instalación y/o configuración de MySQL, debe configurar la codificación de conexión para que MySQL sepa qué codificación está esperando en el lado del cliente (es decir, el cliente lado de la conexión MySQL, que debería ser su script PHP). Puede hacerlo emitiendo manualmente un

SET NAMES utf8

consulta antes de cualquier otra consulta que envíe al servidor MySQL.

Si está utilizando PDO en el lado de PHP, puede configurar la conexión para emitir automáticamente esta consulta en cada (re)conexión usando

$db=new PDO($dsn, $user, $pass);
$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES utf8");

al inicializar su conexión db.