PHP 用fputcsv()生成csv文件在windows Excel 下打开乱码问题解决

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiojing825/article/details/78794289

参考该文章https://segmentfault.com/a/1190000005366832 生成csv,csv文件在windows wps和我ubuntu16桌面版下打开正常。但是使用windows Excel 打开乱码。

解决:

    function test() {
        $fileName = 'demo';
        header('Content-Type: application/vnd.ms-excel');
        header('Content-Disposition: attachment;filename="'.$fileName.'.csv"');
        header('Cache-Control: max-age=0');
        //直接输出到浏览器
        $fp = fopen('php://output', 'a');
        //在写入的第一个字符串开头加 bom。
        $bom =  chr(0xEF).chr(0xBB).chr(0xBF);
        $column = [
            $bom.'姓名','性别', '年龄'
        ];
        $data = [
            '张三','男士', '21'
        ];
        fputcsv($fp, $column);
        fputcsv($fp, $data);
        fclose($fp);
}

猜你喜欢

转载自blog.csdn.net/xiojing825/article/details/78794289
今日推荐