PHP中iconv函数转码时截断字符问题的解决方法

这篇文章主要介绍了PHP中iconv函数转码时截断字符问题的解决方法,本文给出的解决方法是使用mb_convert_encoding代替iconv,需要的朋友可以参考下

iconv是转换编码的,但是在中文转码时候出现显示不全问题,代码如下:

iconv("UTF-8","GB2312//IGNORE",$data); 加上//IGNORE,忽略错误

或者用mb_convert_encoding(),代码如下:

  1. <?php
  2. /* 转换内部编码为 SJIS */
  3. $str = mb_convert_encoding($str, "SJIS");
  4. /* 将 EUC-JP 转换成 UTF-7 */
  5. $str = mb_convert_encoding($str, "UTF-7", "EUC-JP");
  6. /* 从 JIS, eucjp-win, sjis-win 中自动检测编码,并转换 str 到 UCS-2LE */
  7. $str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win");
  8. /* "auto" 扩展成 "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
  9. $str = mb_convert_encoding($str, "EUC-JP", "auto");
  10. ?>