Heim >Backend-Entwicklung >PHP-Tutorial >微信用户名存储的时候用什么类型好啊?

微信用户名存储的时候用什么类型好啊?

WBOY
WBOYOriginal
2016-06-06 20:34:031633Durchsuche

我现在的微信用户名是存在 mysql 中使用的 varchar(64) 来存储的,但是发现有的微信名字插入不了数据库,因为有的有各种表情。

SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x94\x9E\xE6\x88...' for column 'nickname' at row 1

回复内容:

我现在的微信用户名是存在 mysql 中使用的 varchar(64) 来存储的,但是发现有的微信名字插入不了数据库,因为有的有各种表情。

SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x94\x9E\xE6\x88...' for column 'nickname' at row 1

Emoji ? utf8mb4

用varchar存储没有问题。
插入不进去可以考虑转义,或者转码。

你可以考虑先base64编码微信用户名,然后在存入数据库。

其实emoji表情符号都是一些特殊的符号而已,和普通的字符没啥区别,只是电脑没法显示或者显示一个框。网上有一张emoji和字符对应关系的表,你找一下!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn