php字符串在数据库中插入emoji

vof42yt1  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(500)

我把一个论坛mysql数据库转换成utf8mb4。似乎是工作良好的表情保存和显示罚款。
但我对聊天室有意见。emojis作为unicode保存在数据库中 "%uD83D%uDE0B" 如果由phpmyadmin插入emojis,则可以正常工作。
这个问题可以通过 mb_convert 或者别的什么?
PHP5.6
这可能是有问题的代码吗-

$str = unhtmlspecialchars(str_replace(array("\n"), '', trim(convert_urlencoded_unicode($str))));

带代码☀️ 3字节表情符号有用吗?别这样。代码注解为//hex。

dnph8jn4

dnph8jn41#

请勿触摸utf-16。仅使用utf-8。在mysql中,utf-8是 CHARACTER SET utf8mb4 . ? 是十六进制 D83DDE0B 在utf-16中,但你需要十六进制 F09F988B 采用utf8mb4。
可能数据是由java或其他源代码创建的?
实际上,我们没有理由在php中使用转换例程。

相关问题