Typecho 添加 Emoji 表情报错

Typecho添加Emoji表情报错

Typecho添加Emoji表情不支持,报错 Database Query Error;

🎏Emoji 表情

emoji就是表情符号,来自日语词汇“絵文字”(假名为“えもじ”,读音即emoji),随着技术的发展被使用得越来越广泛。如下边这些表情:

😀😁😂🤣😃😄😅😆😉😊😋😎😍😘🥰😗🙄🤐😐😪😴

👩👨🧑👧👦🧒👶👵👴👩‍🦳👼🤶👮‍♀️👩‍🏭

🎈🎆🎇🧨✨🎉🎊🎃🎄🎋🎍🎎🎏🎐🎑🧧🎀🎁🎗🎞🎟🎫🎠🎡👟🥾🥿🥌

🍕🍔🍟🌭🍿🥟🍛🍗🚗🚓🚕🚝🚈🚅🚄❤🧡💛✝☦♐♏♎♍

🎄utf8mb4 与 UTF8

utf8mb4 它占用 4 个字节的存储空间,而 utf8 是 3 个字节,这样,用 3 个字节去存储 4 个字节的东西,很明显是存不下的,会报错,所以要用 utf8mb4,并且 utf8mb4 是兼容 utf8 的。

注意:对于 MariaDB 而言貌似 utf8mb4 有一个使用限制,MariaDB 版本必须是 5.5 以上;对于PHP而言,只有在PHP5.5以后才支持。

Emoji 表情 是 4 个字节。而我们默认的 typecho数据库表编码为 UTF-8,这么说就明白了吧😉?

🔨开始修改

方案二选一

修改数据库表排序顺序UTF8为utf8mb4

修改数据库配置文件

修改Typecho 网站根目录数据库配置文件config.inc.php

$db->addServer(array (
  'host'      =>  localhost,
  'user'      =>  'youruser',
  'password'  =>  'yourpassword',
  'charset'   =>  'utf8mb4', //修改这一行 utf8 -> utf8mb4
  'port'      =>  3306,
  'database'  =>  'yourdatabase'
), Typecho_Db::READ | Typecho_Db::WRITE);
您阅读这篇文章共花了:
打赏
评论区
头像
    头像
    Wcrane
    2021年03月23日 15:53
    回复

    我的好大儿!!!

      头像
      Wriprin
      2021年03月23日 16:56
      回复

    头像
    wriprin
    2021年02月25日 15:39
    回复

    这段话为评论测试内容🎄

      头像
      Enola
      2021年02月25日 15:40
      回复

      这段话为评论回复测试内容

        头像
        wriprin
        2021年02月25日 15:42
        回复

        此段为站长回复内容

文章目录