加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

分割GBK中文遭遇乱码的解决方法

发布时间:2020-12-13 06:32:07 所属栏目:PHP教程 来源:网络整理
导读:1.$result = explode("|","滕华弢|海青"); 究其原因,对于”弢”字(读tao,不认识没关系,我也不认识),因为他的GBK编码值为: 8f7c,不巧的是,“|”的ASCII值也是7c. 这样的问题,还有很多 : 因为GBK编码的编码范围是: 0×8140-0xfefe,所以,理论上来说,任何低字节

1.$result = explode("|","滕华弢|海青"); 究其原因,对于”弢”字(读tao,不认识没关系,我也不认识),因为他的GBK编码值为: 8f7c,不巧的是,“|”的ASCII值也是7c.

这样的问题,还有很多 : 因为GBK编码的编码范围是: 0×8140-0xfefe,所以,理论上来说,任何低字节是7c的字都会有这个问题,比如:

1.倈(827c),億(837c),眧(b17c),鍇(e57c).......等等等等对于这样的情况,

1.第一,可以采用转码到utf8,然后explode,再转回来,这是比较麻烦的方法.
2.第二,我们可以采用正则拿"匹配出"来代替"分离出":
3.preg_match_all("/([/x81-/xfe][/x40-/xfe])+/",$gbk_str,$matches);//写死编码这样,$matches中0号索引对应的数组就是结果词的数组了..

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读