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


Posted in PHP onAugust 09, 2013

类似如下的字符串(GBK), explode不能得到正确结果:

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号索引对应的数组就是结果词的数组了..

PHP 相关文章推荐
同一空间绑定多个域名而实现访问不同页面的PHP代码
Dec 06 PHP
php入门学习知识点二 PHP简单的分页过程与原理
Jul 14 PHP
PHP版国家代码、缩写查询函数代码
Aug 14 PHP
php中的Base62类(适用于数值转字符串)
Aug 12 PHP
mac下安装nginx和php
Nov 04 PHP
php查看当前Session的ID实例
Mar 16 PHP
PHP中的魔术方法总结和使用实例
May 11 PHP
ThinkPHP中order()使用方法详解
Apr 19 PHP
php中实现进程锁与多进程的方法
Sep 18 PHP
php版阿里云OSS图片上传类详解
Dec 01 PHP
关于PHP转换超过2038年日期出错的问题解决
Jun 28 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 PHP
解析isset与is_null的区别
Aug 09 #PHP
PHP中怎样保持SESSION不过期 原理及方案介绍
Aug 08 #PHP
php中用socket模拟http中post或者get提交数据的示例代码
Aug 08 #PHP
浅析php变量作用域的一些问题
Aug 08 #PHP
解析php开发中的中文编码问题
Aug 08 #PHP
php中jpgraph类库的使用介绍
Aug 08 #PHP
浅析php与数据库代码开发规范
Aug 08 #PHP
You might like
PHP的PSR规范中文版
2013/09/28 PHP
PHP微信公众号自动发送红包API
2016/06/01 PHP
Yii2――使用数据库操作汇总(增删查改、事务)
2016/12/19 PHP
WebGame《逆转裁判》完整版 代码下载(1月24日更新)
2007/01/29 Javascript
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
2009/11/27 Javascript
JavaScript高级程序设计 XML、Ajax 学习笔记
2011/09/10 Javascript
nodejs初步体验篇
2015/11/23 NodeJs
纯前端JavaScript实现Excel IO案例分享
2016/08/26 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
2016/11/09 Javascript
彻底学会Angular.js中的transclusion
2017/03/12 Javascript
关于javascript获取内联样式与嵌入式样式的实例
2017/06/01 Javascript
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
2019/10/16 jQuery
js将日期格式转换为YYYY-MM-DD HH:MM:SS
2020/09/18 Javascript
JavaScript中clientWidth,offsetWidth,scrollWidth的区别
2021/01/25 Javascript
Python简单格式化时间的方法【strftime函数】
2016/09/18 Python
python 获取网页编码方式实现代码
2017/03/11 Python
Python 2.7中文显示与处理方法
2018/07/16 Python
解决vscode python print 输出窗口中文乱码的问题
2018/12/03 Python
对Python之gzip文件读写的方法详解
2019/02/08 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
Django通用类视图实现忘记密码重置密码功能示例
2019/12/17 Python
Python 连接 MySQL 的几种方法
2020/09/09 Python
AmazeUI 导航条的实现示例
2020/08/14 HTML / CSS
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
P D PAOLA意大利官网:西班牙著名的珠宝首饰品牌
2019/09/24 全球购物
艺术系应届生的自我评价
2013/10/19 职场文书
幼儿园园长自我鉴定
2013/10/22 职场文书
文史专业毕业生自荐信
2013/11/17 职场文书
教研活动总结
2014/04/28 职场文书
网络营销策划方案
2014/06/04 职场文书
解放思想演讲稿
2014/09/11 职场文书
老公婚前保证书
2015/02/28 职场文书
​(迎国庆)作文之我爱我的祖国
2019/09/19 职场文书
MYSQL主从数据库同步备份配置的方法
2021/05/26 MySQL
微信小程序基础教程之echart的使用
2021/06/01 Javascript
css中有哪些方式可以隐藏页面元素及区别
2022/06/16 HTML / CSS