PDO获取数据乱码的解决方法

  • 确保PHP文件编码格式为UTF8
  • 确保数据字段格式为UTF8
  • PDO中设置编码格式,有如下三种方式:

方式1: 写在初始化dsn中

define( 'DB_DSN', 'mysql:host=localhost;dbname=mythings;charset=utf8');

方式2:写在mysql初始化命令中

$pdo = new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME,DB_USER,DB_PWD,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));

方式3:使用query函数设置

$pdo = new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME,DB_USER,DB_PWD);

$pdo->query("SET NAMES 'utf8'");

 

说明:如果以上都不能解决,请删除缓存,重启服务器。

原文地址:https://www.cnblogs.com/mrxy/p/8191810.html