>  기사  >  데이터 베이스  >  emoji表情无法插入MySQL中_MySQL

emoji表情无法插入MySQL中_MySQL

WBOY
WBOY원래의
2016-05-31 08:50:111189검색

        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。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.