分割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.ini中文版
Oct 09 PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 PHP
PHP学习笔记 用户注册模块用户类以及验证码类
Sep 20 PHP
php 搜索框提示(自动完成)实例代码
Feb 05 PHP
简单的方法让你的后台登录更加安全(php中加session验证)
Aug 22 PHP
解析PHP多种序列化与反序列化的方法
Jun 06 PHP
深入eAccelerator与memcached的区别详解
Jun 06 PHP
php sybase_fetch_array使用方法
Apr 15 PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 PHP
zend framework重定向方法小结
May 28 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
Jan 26 PHP
Thinkphp 框架扩展之驱动扩展实例分析
Apr 27 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模拟post提交数据的方法
2015/02/12 PHP
示例详解Laravel重置密码代码重构
2016/08/10 PHP
php进程daemon化的正确实现方法
2018/09/06 PHP
关于Curl在Swoole协程中的解决方案详析
2019/09/12 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
JavaScript 无符号右移运算符
2009/04/17 Javascript
理解JavaScript的caller,callee,call,apply
2009/04/28 Javascript
基于jquery的禁用右键、文本选择功能、复制按键的实现代码
2013/08/27 Javascript
javascript中eval函数用法分析
2015/04/25 Javascript
AngularJS入门教程之过滤器用法示例
2016/11/02 Javascript
BootStrap Fileinput的使用教程
2016/12/30 Javascript
jQuery实现简单的抽奖游戏
2017/05/05 jQuery
ng-zorro-antd 入门初体验
2018/12/03 Javascript
Vuex mutitons和actions初使用详解
2019/03/04 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
Vue打包后访问静态资源路径问题
2019/11/08 Javascript
打印出python 当前全局变量和入口参数的所有属性
2009/07/01 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
利用Python为iOS10生成图标和截屏
2016/09/24 Python
用tensorflow实现弹性网络回归算法
2018/01/09 Python
python遍历一个目录,输出所有的文件名的实例
2018/04/23 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
Python装饰器如何实现修复过程解析
2020/09/05 Python
如何让PyQt5中QWebEngineView与JavaScript交互
2020/10/21 Python
使用CSS3滤镜的filter:blur属性制作毛玻璃模糊效果的方法
2016/07/08 HTML / CSS
俄罗斯有趣和原创礼物网上商店:MagicMag
2019/08/01 全球购物
校长就职演讲稿
2014/01/06 职场文书
《欢乐的泼水节》教学反思
2014/04/22 职场文书
驾驶员培训方案
2014/05/01 职场文书
环保倡议书50字
2014/05/15 职场文书
教代会闭幕词
2015/01/28 职场文书
2016年寒假社会实践活动总结
2015/03/27 职场文书
拉贝日记观后感
2015/06/05 职场文书
解决hive中导入text文件遇到的坑
2021/04/07 Python
Python 解决空列表.append() 输出为None的问题
2021/05/23 Python
JavaScript 中for/of,for/in 的详细介绍
2021/11/17 Javascript