Loading... Typecho 默认不支持 Emoji 表情,这不是程序的锅,而是由于编码的问题造成,Emoji 是一种在 Unicode 位于\u1F601-\u1F64F区段的字符。这显然超出了目前常用的 UTF-8 字符集的编码范围\u0000-\uFFFF。在 MySQL 中,UTF-8 只支持最多 3 个字节,而 Emoji 是 4 个字节。所以评论中带有 Emoji 表情才会报错。 我们只需简单两步即可让 typecho 支持 emoji 表情评论,只要将默认的数据库编码 utf8 修改为 utf8mb4 即可。 1.修改评论内容字段的编码 ======================== 使用数据库管理工具,找到 typecho_comments 评论表的 text 字段,将该字段的编码改为 utf8mb4_general_ci。 2.修改数据库配置文件 ==================== 打开网站根目录数据库配置文件 config.inc.php 将 charset 的值由 utf8 改为 utf8mb4。 ``` /** 定义数据库参数 */ db = new Typecho_Db('Pdo_Mysql', 'echo_'); Missing open brace for subscriptdb->addServer(array ( 'host' => 'localhost', 'user' => 'echo', 'password' => 'password', 'charset' => 'utf8mb4', //修改这一参数 'port' => '3306', 'database' => 'echo', ), Typecho_Db::READ | Typecho_Db::WRITE); Typecho_Db::set($db); ``` 修改好后保存即可。 # 3.完工 😀😁🤣😂😄😅😆😇😉😊🙂🙃☺️😋😌😍😘😙😜😝🤑🤓😎🤗🤡🤠😏😶😑😒🙄🤔😳😞😟😠😡😔😕☹️😣😖😫😤😮😱😨😯😦😢😥😪😓🤤😭😲🤥🤢🤧🤐😷🤒🤕😴💤 最后修改:2020 年 11 月 14 日 11 : 35 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏叭O(∩_∩)O~~ ×Close 赞赏作者 扫一扫支付 支付宝支付 微信支付
此处评论已关闭