mysql - 使PDO连接采用utf8编码

标签 mysql pdo encoding

我正在尝试将我的连接编码为 UTF8。我正在查看其他一些帖子,但由于某种原因它不起作用。不知道我做错了什么。

这就是我的 conn 的样子

 $this->db_conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);

这就是我正在尝试做的,但它说这是不正确的

 $this->db_conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password.";charset=utf8");

出现此错误 数据库连接错误:SQLSTATE[28000] [1045] 访问被拒绝

我正在使用MySql

最佳答案

将字符集移到用户和密码之前。

$this->db_conn = new PDO("mysql:host=" .
     $this->host .
     ";dbname="  . $this->db_name .
     ";charset=utf8" ,
     $this->username,
     $this->password);

关于mysql - 使PDO连接采用utf8编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52372559/

相关文章:

php - 为什么不能将 MYSQL 函数传递到准备好的 PDO 语句中?

php - mysql_query 到 PDO

node.js - Express js 将 header 编码为 utf-8

php - 返回 PHP 中 MySQL 插入的对象

php - 更新方法在 codeigniter 中不起作用

mysql - 为什么我的 SQL UPDATE 语句不能在循环中运行?

mysql - 我想找到这两个表的总和

php - 如何使用 PDO 从两个 MySQL 表输出组合结果

php - 替换 PHP 字符串中的特殊字符的问题

C# 使用 RSA 签名和验证签名。编码问题