当前位置:Gxlcms > PHP教程 > 织梦中文分词输入的词语返回乱码怎么办

织梦中文分词输入的词语返回乱码怎么办

时间:2021-07-01 10:21:17 帮助过:6人阅读

php中文分词,织梦中文分词

织梦的中文分词 ,词库中明明有烦恼 ,忧愁这样的词语 ,但是测试输入 ,返回乱码 ,不知道是怎么回事 ,还有这样的代码 else if($n>0xA13F && $n < 0xAA40) , 其中 0xA13F ,0xAA40 是怎么来的 。


回复讨论(解决方案)

if($n>0xA13F && $n < 0xAA40) 是全角符号

他用的是 gbk 字符集,如果你不是的,那一定会乱码的

真的非常谢谢 ,但是应用的类 我都用编辑器存为utf-8 的格式了 ,输入的有些词语,就不会显示乱码啊 ,上面乱码的是经过分词后的词语 ,下面这一排是没有分词的原文,都没有显示乱码啊

他首先用 ReviseString 方法对传入串做预处理
其中有

        //如果中文字符        if(isset($str[$i+1])){          $c = $str[$i].$str[$i+1];
就是说他认为一个中文是由两个字节组成的,这是 gbk 的编码规则
而一个非 ascii 的 utf-8 字符可以是 2个、3个、4个...字节组成
汉字的 utf-8 多由 3 个字节组成

你只把文件内容改为 utf-8 的,没有改变处理规则
出现乱码不就是很正常的了吗?

非常感谢 ,是代码处理的问题 ,所以源码害的深究一番了 !

调用前将 utf-8 转成 gbk 的
调用后在把 贵宾卡 转成 utf-8 的
这样就不需要研究算法了

呵呵 ,多谢多谢楼主

错了 ,错了 ,多谢版主 。

人气教程排行