在数据库中的CKEditor(表情符号)中保存表情符号



我将"Empjione"(https://github.com/braune-digital/ckeditor-emojione)作为CKEditor 4安装中的附加组件。 但是,大多数表情符号不会保存到数据库中(有些会)。我正在将 CKEditor 的输出作为 HTML 保存到数据库中。

以下是一些确实被保存❤️的: , , ☝️ ⚠️
以下是一些未保存的内容:👨、💨、 👽

例如,这个:some text 💀 now more text在我的数据库中最终是这样的:<p>some text&nbsp;

有什么想法吗? 还是有没有人知道的更好的表情符号附加组件?

这与CKEditor无关,而是MySQL。您的数据可能正在使用utf8.MySQL 的utf8实际上只允许每个字符三个字节;使用 4 个字节的表情符号不会保存。如果您在严格模式下运行MySQL,则会给您一个Incorrect string value错误。

您可以通过将数据库的字符集更改为utf8mb4来解决此问题。

这篇DBA Stack Exchange文章解释了如何做到这一点。

最新更新