Maison  >  Article  >  base de données  >  emoji表情无法插入MySQL中_MySQL

emoji表情无法插入MySQL中_MySQL

WBOY
WBOYoriginal
2016-05-31 08:50:111189parcourir

        IOS端的数据通过PHP透传到后台C++,上PHP系统会自动把Unicode转码成UTF-8。
        UTF-8编码的emoji表情无法插入MySQL中。

        经过分析发现,emoji表情是Unicode6.1才引入的,转成UTF-8为四个字节的编码方式,而不是像汉字,UTF-8编码为3个字节。而MySQL中如果对longext字段存储时选择存储方式为UTF-8是无法处理四字节的UTF-8编码,只有utf8mb4的编码方式才支持4字节的UTF-8编码。所以选择utf8mb4的编码方式,mysql才能存储4字节的UTF-8编码,从而存储emoji表情。而且MySQL需要升级到5.5的版本。

        但是存储到MySql的编码虽然后壳存储4字节的UTF-8编码,但是无法成功显示,因为存进去的是乱码。所以需要把UTF-8转成Unicode再存入MySQL。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:MySQLAdmin的用法_MySQLArticle suivant:php扩展之 pdo_mysql.so_MySQL