欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

utf-8 - PHP里面如何做到统一使用UTF8编码?

程序员文章站 2022-04-12 14:01:36
...
PHP语言一直没有解决UTF8(unicode)问题,在多种编码的时候比较乱。
写一个truncate函数, 还要用专门的mbstring来处理。

在现有条件下(php5+ ~ php7), 如何才能做到统一使用utf8编码呢?

python3+, golang 等全都内建支持和使用unicode编码......

回复内容:

PHP语言一直没有解决UTF8(unicode)问题,在多种编码的时候比较乱。
写一个truncate函数, 还要用专门的mbstring来处理。

在现有条件下(php5+ ~ php7), 如何才能做到统一使用utf8编码呢?

python3+, golang 等全都内建支持和使用unicode编码......

严格意义上来说,PHP没有字符串的概念,PHP中的string其实是字节数组的概念

字符串(string)的单位是字符(character),字节数组(byte[])的单位是字节(byte)

一个或多个字节如何组成字符的编码方式就是所谓的编码了(比如一对一而且只支持128个字符的ASCII)

对于PHP来说,他很单纯地只处理字节,不处理字符,也可以说天生支持任意编码,唯一需要注意的就是那些号称处理string的函数都不是用于字符串处理,而是用于字节数组(二进制数据)的,需要真正意义的字符串处理的时候应该用到你说的mb库

而如果题主你的问题是数据来源编码不同的场景,那么无论任何语言处理方式都只能做编码转换,mb或iconv都能帮到你

转码啊。

对那些需要统一编码的进行转码。

获取编码类型:mb_detect_string()

编码转换:iconv() 等,详情看php手册,关于国际字符,多字节字符处理方面的……