1. 存储大小
(1). GBK编码专门用来解决中文编码的,是双字节的。不论中英文都是双字节的。
(2). UTF-8 编码是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。对于英文字符较多的网站则用UTF-8 节省空间。
(3). utf-8mb4支持4个字节的存储,如emoji表情
2. 范围
(1). GBK包含全部中文字符;
(2). UTF-8则包含全世界所有国家需要用到的字符。
(3). utf8mb4专门用来兼容四字节的unicode。utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。
3. 使用场景
网页使用UTF-8和GBK哪个好?答:根据个人需要。
1. 如果你主要做中文程序的开发,客户也主要是中国人的话就用GBK,因为UTF-8编码的中文使用了三个字节,用GBK节省了空间。
2. 如果你的网站是中文的,但国外用户也不少,最好也用UTF-8
3. 如果做英文网站开发,还是用utf-8吧,因为utf-8中英文只占一个字节。GBK中英文也是两个字节的,并且国外客户访问GBK要下载语言包。
(如果是外国人访问你的GBK网页,需要下载中文语言包支持。访问UTF-8编码的网页则不出现这问题,UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。)
4. 如果需要保持四个字节的数据,使用utf8mb4
参考:https://blog.csdn.net/wangyunpeng0319/article/details/72853578