上一篇文章:
Uncaught mysqli_sql_exception: Incorrect string value: 'xF0x9Fx91x86xE5x85...' for column (144d.com)
文章中写了,改了数据库的字符集,字段的字符集,写入还是报错,当时没注意在执行查询的时候,用了set names
然后这个set names还设置的是utf8
经测试,这个set names改为utf8mb4就对了
连接代码如下:
function getDb($dsn,$user,$pwd)
{
try {
$conn=new PDO($dsn,$user,$pwd,[PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8mb4']);
return $conn;
}catch (PDOException $exception){
exit($exception->getMessage());
}
}