c php乱码,php分割GBK中文乱码的解决方法
類似如下的字符串(GBK), explode不能得到正確結果:
$result = explode("|", "滕華弢|海青");
究其原因, 對于”弢”字(讀tao,不認識沒關系,我也不認識), 因為他的GBK編碼值為: 8f7c, 不巧的是, “|”的ASCII值也是7c.
還有一些類似的問題: 因為GBK編碼的編碼范圍是: 0×8140-0xfefe, 所以, 理論上來說, 任何低字節是7c的字都會有這個問題, 比如:
倈(827c), 億(837c), 眧(b17c), 鍇(e57c).......等等等等
對于這樣的情況,
第一, 可以采用轉碼到utf8, 然后explode, 再轉回來, 這是比較麻煩的方法.
第二, 我們可以采用正則拿"匹配出"來代替"分離出":
preg_match_all("/([/x81-/xfe][/x40-/xfe])+/", $gbk_str, $matches);//寫死編碼
這樣, $matches中0號索引對應的數組就是結果詞的數組了..
以上就是有關php GBK編碼問題的解決方法,不知是否可以解決您的問題,歡迎與大家溝通交流。
您可能感興趣的文章:
php函數substr截取中文字符出現亂碼的解決方法
php substr截斷中文半個漢字亂碼問題的解決方法
php亂碼問題 utf8亂碼雜談
php截取中文字符串亂碼如何解決呢
解決php截取utf-8中文字符串時亂碼的問題
如何解決php中文字符亂碼,中文字符入庫亂碼的問題
php中文字符串截斷且無亂碼的解決方法
有關php中文亂碼的解決方法
php utf8 一半亂碼的問題
總結
以上是生活随笔為你收集整理的c php乱码,php分割GBK中文乱码的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 下雾天行驶开什么灯图解(驾驶机动车雾天要
- 下一篇: php strlen 线程安全,浅析PH