我要从php导出到以CP1252西编码存储的csv订单。一堆法语口音字符导致csv中出现问题。
我发现要使csv正常工作,我必须对每个要回显的值都str_replace
和utf8_decode
进行确认,以便确保遍历循环,并且必须对每个值:
echo utf8_decode(str_replace( array( '.', ',' ), '', $row['billing_name'] )) . ","; //Addr1
str_replace
是为了确保csv在no上正常工作,从而导致单元出现问题,而utf8_decode
是为了确保字符已转换(我认为是可以转换字符的,不是100%肯定的)虽然)。
有没有比每次要打印一行都必须同时使用两个功能更好的方法?
答案 0 :(得分:-1)
只需在SELECT查询中执行此操作,将其转换为二进制文件,然后将其转换为utf8 ...
SELECT CONVERT(BINARY CONVERT(column_name USING latin1) USING utf8) AS converted_column FROM table