Typecho添加支持Emoji表情(MySQL支持插入Emoji表情)

刚才在写的时候发现插入表情发布会报数据库错误就查了一下,并进行了修改。

Typecho添加支持Emoji表情(MySQL支持插入Emoji表情)

要想数据库支持Emoji表情,就得使用utf8mb4编码来支持,于是我们需要修改已有数据库的编码格式,好消息是utf8mb4是utf-8的超集,完全兼容utf-8,修改后,不会影响现有数据。

修改数据表编码

  • 使用phpAdmin或命令行连接MySQL数据库:

    mysql -u root -p
    
  • 切换到typecho的数据库

    use 数据库名;
    
  • 执行以下sql语句,修改typecho数据库中表的编码格式为utf8mb4

    alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_general_ci;
    alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_general_ci;
    alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_general_ci;
    alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_general_ci;
    alter table typecho_options convert to character set utf8mb4 collate utf8mb4_general_ci;
    alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_general_ci;
    alter table typecho_users convert to character set utf8mb4 collate utf8mb4_general_ci;
    

如果是PHPmyadmin可以直接进入图像界面修改编码格式


修改config.inc.php配置

nano config.inc.php

修改 charset 的值为 utf8mb4

'charset' => 'utf8mb4',  # 修改编码为 utf8mb4

保存退出

这样就成功为typecho开启了Emoji支持。

测试

你可能感兴趣的:(typecho,mysql,php)