php导出cvs,excel打开数字超过16变科学计数法

今天使用php导出cvs,在excel中打开,某一个字段是数字,长度高于16位结果就显示科学计数法
超过15位的话从第16位开始就用0代替了
php导出cvs,excel打开数字超过16变科学计数法_第1张图片
查询了半天总算解决了就是在后面加上"\t"

    $data[$key][1] = " ".$value[1]."\t";

 // file name
        $filename = date('Ymd').'123.csv';
        header("Content-type: text/csv; charset=UTF-8");
        header("Content-Description: File Transfer");
        header("Content-Disposition: attachment; filename=$filename");
        header("Content-Transfer-Encoding: binary");
        $data = [
                    ['hhh','123321213313123123131'],
                    ['hh3123h','123321213313123123131'],
                    ['hh34h','12332121331312312313131231']
                ];

        foreach ($data as $key =>$value)
        {

            $data[$key][1] = " ".$value[1]."\t";
        }

        // file creation
        ob_clean();
        $file = fopen('php://output', 'w');

        fwrite($file,"\xEF\xBB\xBF");
        $header = array("test1",'test2');

        fputcsv($file, $header);
        foreach ($data as $key=>$line){

            fputcsv($file,$line);
        }
        fclose($file);
        exit;

你可能感兴趣的:(php,excel,android)