zoukankan      html  css  js  c++  java
  • (PHP)修复mac book 导出 csv xls xlsx 中文乱码问题

    背景:一般情况下,当我们导出 csv (或xls或xlsx)时,都需要通过文件头来设置一下文件输出的文字编码:

    header('Content-Type: application/vnd.ms-excel; charset=utf8');

    使用utf8编码的话,一般来说wps好使,office 就不太好使(office打开会乱码);

    然后在很久很久的一段时间里,我都是使用 gbk 或 gb2312 来解决这个问题:

    header('Content-Type: application/vnd.ms-excel; charset=gbk');

    今天才发现,在mac book 环境下,设置 gbk 编码其实是不行的。也会乱码。经过百度一下之后,才知道要设置为 gb18030

    header('Content-Type: application/vnd.ms-excel; charset=gb18030');

    关于gb18030的介绍看这里:https://baike.baidu.com/item/gb18030/3204518


    当然,除了修改文件头,还要记得修改 echo 出来的内容的编码,例如输出标题:

    echo mb_convert_encoding(implode(',', array_values($titles)), 'gb18030') . "
    ";

    修改后的导出类:

    https://www.cnblogs.com/tujia/p/11358096.html


    完。

  • 相关阅读:
    泛型
    多播委托
    匿名方法
    委托
    正则表达式
    压缩和解压,文件读取练习
    Vue样式绑定
    Vue跑马灯
    Vue中的v-for遍历循环
    Vue框架
  • 原文地址:https://www.cnblogs.com/tujia/p/13130702.html
Copyright © 2011-2022 走看看