javascript unicode字符;保持十六进制值

时间:2018-06-28 08:35:29

标签: javascript html unicode

我有一个自制的文本编辑器,它具有一项功能,您可以将Unicode字符插入到(可编辑的)div中。例如,扬声器图标由以下字符串表示:

  

🔊

,并将此字符串作为文本节点插入后,将直接在div中将其正确呈现为

  

?

导出编辑器的内容时​​,基本上是提交div.innerHTML并将其存储在mysql数据库中。

但是我希望innerHTML保留/保留字符的十六进制表示而不是呈现的版本,例如输出字符串,如

this is a <span style='color:green'>speaker-icon: &#x1f50a;</span> in my message.

原因是在mysql中,该图标还存储为'???' 。 Mysql使用utf8mb4_general_ci作为排序规则。另外,无论排序规则如何,我都希望HTML尽可能具有可移植性。

这可能吗?

PS我正在使用PHP作为后端。

1 个答案:

答案 0 :(得分:0)

连接可能没有在连接和/或列定义中指定utf8mb4。

请参见Trouble with UTF-8 characters; what I see is not what I stored中的“问号”