这个问题就是出在将emoji的表情,存入到MySQL的文本字段中。

网上很多方法解决,大多都是修改表的字符集。

我之前也遇到过,修改字符集确实也解决了,但这次,修改了库、表、字段的字符集。my.ini的配置也改了,还是不行

最后只能通过移除这个emoji字符来解决。


别人的方法:


function removeEmojiChar($str)
{
    $mbLen = mb_strlen($str);
    
    $strArr = [];
    for ($i = 0; $i < $mbLen; $i++) {
        $mbSubstr = mb_substr($str, $i, 1, 'utf-8');
        if (strlen($mbSubstr) >= 4) {
            continue;
        }
        $strArr[] = $mbSubstr;
    }
    
    return implode('', $strArr);
}

参考:https://blog.csdn.net/guo_qiangqiang/article/details/120758287

此地址,还有其他方法,就不再转了。