分割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 相关文章推荐
仿Aspnetpager的一个PHP分页类代码 附源码下载
Oct 08 PHP
深入解析php之sphinx
May 15 PHP
php cookie使用方法学习笔记分享
Nov 07 PHP
PHP实现模仿socket请求返回页面的方法
Nov 04 PHP
PHP转盘抽奖接口实例
Feb 09 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
yii2使用gridView实现下拉列表筛选数据
Apr 10 PHP
PHP实现动态获取函数参数的方法示例
Apr 02 PHP
php微信公众号开发之翻页查询
Oct 20 PHP
thinkphp5框架实现的自定义扩展类操作示例
May 16 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
Sep 30 PHP
浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法
Oct 12 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 和 MySQL 基础教程(三)
2006/10/09 PHP
PHP XML备份Mysql数据库
2009/05/27 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
php获取twitter最新消息的方法
2015/04/14 PHP
Apache连接PHP后无法启动问题解决思路
2015/06/18 PHP
php批量删除超链接的实现方法
2015/10/19 PHP
Yii CGridView用法实例详解
2016/07/12 PHP
PHP中trait使用方法详细介绍
2017/05/21 PHP
写的htc的数据表格
2007/01/20 Javascript
jQuery each()小议
2010/03/18 Javascript
javascript getElementsByClassName实现代码
2010/10/11 Javascript
js 与 php 通过json数据进行通讯示例
2014/03/26 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
2016/12/31 Javascript
微信小程序图片选择、上传到服务器、预览(PHP)实现实例
2017/05/11 Javascript
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
JS实现弹出下载对话框及常见文件类型的下载
2017/07/13 Javascript
Vue调试神器vue-devtools安装方法
2017/12/12 Javascript
vue自动化表单实例分析
2018/05/06 Javascript
在Vue methods中调用filters里的过滤器实例
2018/08/30 Javascript
深入理解Puppeteer的入门教程和实践
2019/03/05 Javascript
Vue组件模板的几种书写形式(3种)
2020/02/19 Javascript
Vue事件处理原理及过程详解
2020/03/11 Javascript
JavaScript实现多文件下载方法解析
2020/08/07 Javascript
Python模块学习 filecmp 文件比较
2012/08/27 Python
Python中用Decorator来简化元编程的教程
2015/04/13 Python
Python的collections模块中的OrderedDict有序字典
2016/07/07 Python
python socket网络编程之粘包问题详解
2018/04/28 Python
pyqt5 禁止窗口最大化和禁止窗口拉伸的方法
2019/06/18 Python
Django实现WebSSH操作物理机或虚拟机的方法
2019/11/06 Python
中国京东和泰国中央集团合资的网站:JD CENTRAL
2020/08/22 全球购物
华为智利官方商店:Huawei Chile
2020/05/09 全球购物
竞聘演讲稿
2014/04/24 职场文书
2014年卫生工作总结
2014/11/27 职场文书
综合素质评价个性发展自我评价
2015/03/06 职场文书
Redis基本数据类型Zset有序集合常用操作
2022/06/01 Redis