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

PHP:problemas al generar utf8 desde la base de datos MySQL usando PDO

Hay múltiples puntos de falla cuando se trabaja con UTF8:

  • asegúrese de que la tabla sea utf8

    Utilice el comando SQL Show Variables; para verificar la configuración de caracteres de MySQL para la tabla.

  • los datos insertados son utf8

    Puede probar herramientas como phpMyAdminer o Administrador para comprobar si los datos
    se han insertado correctamente. Intente insertar datos a través de la herramienta de forma manual. Cuando los inserte a través de un script, no utilice las funciones de cadena básicas. Utilice siempre sus alternativas de mbstring. Establecer mb_internal_encoding( 'UTF-8' ); para permitir que PHP maneje UTF-8 internamente.

  • los datos obtenidos son utf8

    Solo usaría $pdo->exec("SET NAMES utf8"); y suelta el resto. Porque SET NAMES x es equivalente a SET character_set_client = x; SET character_set_results = x; SET character_set_connection = x;

  • los datos mostrados son utf8

    Si esto se muestra en una página html, no olvide configurar la metaetiqueta o el encabezado
    "Content-Type: text/html; charset=utf-8" .