PHP 解决iconv()函数进行转码时遇到生僻字、特殊字符等出现数据丢失、乱码等问题
当我们在对数据进行csv文件转化的时候,经常需要对数据进行UTF-8、GBK的转码操作,如:
iconv('utf-8', 'gbk', $value);
但是当在实际使用中,会遇到转化后的csv文件中部分数据乱码、部分行、列丢失的显现。
这类原因是:在使用iconv()函数时以上方法会遇到一些特别字符时,如:"生僻字"、"—"、" "等字符,转换就断掉了,这些字符后的文字都没法继续转换了。
解决方法:
iconv('utf-8', 'gbk//IGNORE', $value); //IGNORE解决特殊字符转码问题
其中//IGNORE 会忽略错误,继续向下执行。