我之前在正常的 mysql_* 连接中有这个:
mysql_set_charset("utf8",$link);
mysql_query("SET NAMES 'UTF8'");
我需要 PDO 吗?我应该在哪里得到它?
$connect = new PDO("mysql:host=$host;dbname=$db", $user, $pass, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
最佳答案
您将在连接字符串中包含它,例如:
"mysql:host=$host;dbname=$db;charset=utf8mb4"
但是,在 PHP 5.3.6 之前,字符集选项被忽略。如果您运行的是旧版本的 PHP,则必须这样做:
$dbh = new PDO("mysql:host=$host;dbname=$db", $user, $password);
$dbh->exec("set names utf8mb4");
关于PHP PDO : charset, 设置名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43461598/