一般错误:1366错误的字符串值:'\ xF0 \ x9F \ x8D \ xB8!...'

Fif*_*ifi 1 mysql sql utf8mb4

当用户发送包含表情符号的消息时(确切地说,当消息存储在MySql数据库中时),将出现以下错误:

PDOException:SQLSTATE [HY000]:一般错误:1366错误的字符串值:'\ xF0 \ x9F \ x8D \ xB8!...'

我已经检查了以下问题:

前面的所有问题都提出了相同的答案:将表格更改为 utf8mb4排字。这就是我所做的:我将表和相关列更改为utf8mb4_unicode_ci

但是问题仍然出现。任何的想法 ?

GMB*_*GMB 5

将列和表设置为utf8mb4很好,但是需要其他设置才能使工作顺利进行:

PDO连接:

$dsn = 'mysql:host=my_ip;dbname=my_db;charset=utf8mb4';
Run Code Online (Sandbox Code Playgroud)

连接后和运行查询之前要运行的SQL命令:

$conn->exec("set names utf8mb4");
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

1004 次

最近记录:

6 年,11 月 前