分割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边学边教》(02.Apache+PHP环境配置――下篇)
Dec 13 PHP
phpmyadmin中配置文件现在需要绝密的短语密码的解决方法
Feb 11 PHP
PHP 图片文件上传实现代码
Dec 29 PHP
php array_map()数组函数使用说明
Jul 12 PHP
使用PHP和HTML5 FormData实现无刷新文件上传教程
Sep 06 PHP
php中FTP函数ftp_connect、ftp_login与ftp_chmod用法
Nov 18 PHP
thinkphp命名空间用法实例详解
Dec 30 PHP
PHP处理数组和XML之间的互相转换
Jun 02 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
Jun 22 PHP
yii gridview实现时间段筛选功能
Aug 15 PHP
PHP设计模式入门之迭代器模式原理与实现方法分析
Apr 26 PHP
php判断IP地址是否在多个IP段内
Aug 18 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 ajax 分页类代码
2008/11/13 PHP
php Memcache 中实现消息队列
2009/11/24 PHP
浅谈PHP中的面向对象OOP中的魔术方法
2017/06/12 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
2020/02/29 PHP
PHP扩展类型及安装方式解析
2020/04/27 PHP
jquery自定义下拉列表示例
2014/04/25 Javascript
js限制文本框只能输入数字方法小结
2014/06/16 Javascript
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
2019/10/25 Javascript
npx create-react-app xxx创建项目报错的解决办法
2020/02/17 Javascript
JS 5种遍历对象的方式
2020/06/16 Javascript
[02:05]2014DOTA2西雅图邀请赛 老队长全明星大猜想谁不服就按进显示器
2014/07/08 DOTA
使用python3.5仿微软记事本notepad
2016/06/15 Python
python类的方法属性与方法属性的动态绑定代码详解
2017/12/27 Python
使用python 爬虫抓站的一些技巧总结
2018/01/10 Python
基于python list对象中嵌套元组使用sort时的排序方法
2018/04/18 Python
Python+OpenCV图片局部区域像素值处理改进版详解
2019/01/23 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
python中enumerate() 与zip()函数的使用比较实例分析
2019/09/03 Python
Python 实现数组相减示例
2019/12/27 Python
英国领先的汽车轮胎和快速健康中心:Kwik Fit
2017/10/29 全球购物
丝芙兰香港官网:Sephora香港
2018/03/13 全球购物
新锐科技Java程序员面试题
2016/07/25 面试题
一年级家长会邀请函
2014/01/25 职场文书
庆祝教师节活动方案
2014/01/31 职场文书
工程力学专业自荐信范文
2014/03/17 职场文书
药品业务员岗位职责
2014/04/17 职场文书
初一新生军训方案
2014/05/22 职场文书
大学毕业生推荐信
2014/07/09 职场文书
离婚协议书格式
2015/01/26 职场文书
公司团队口号霸气押韵
2015/12/24 职场文书
2019个人工作总结
2019/06/21 职场文书
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB