Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php CSV导出UTF8编码导致excel格式不正确_Php_Excel_Csv_Utf 8 - Fatal编程技术网

Php CSV导出UTF8编码导致excel格式不正确

Php CSV导出UTF8编码导致excel格式不正确,php,excel,csv,utf-8,Php,Excel,Csv,Utf 8,我厌倦了做csv导出。我需要两种语言(泰米尔语和英语)在表中使用正常的标题 $now = gmdate("D, d M Y H:i:s"); header("Expires: Tue, 03 Jul 2001 06:00:00 GMT"); header("Cache-Control: max-age=0, no-cache, must-revalidate, proxy-revalidate"); header("Last-Modified: {$now} GM

我厌倦了做csv导出。我需要两种语言(泰米尔语和英语)在表中使用正常的标题

    $now = gmdate("D, d M Y H:i:s");
    header("Expires: Tue, 03 Jul 2001 06:00:00 GMT");
    header("Cache-Control: max-age=0, no-cache, must-revalidate, proxy-revalidate");
    header("Last-Modified: {$now} GMT");
    header ( 'Content-Type: application/vnd.ms-excel') ;
    header("Content-Disposition: attachment;filename={$filename}");
    header("Content-Transfer-Encoding: binary");
    echo $content;
这导致泰米尔文字显示出现问题。但是excel的格式很好。因此,我使用UTF8编码来显示泰米尔字符,如下所示

    $now = gmdate("D, d M Y H:i:s");
    header('Pragma: public');
    header("Expires: Tue, 03 Jul 2001 06:00:00 GMT");
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header("Last-Modified: {$now} GMT");
    header('Content-Type: text/csv');
    header("Content-Disposition: attachment;filename={$filename}");
    header("Content-Transfer-Encoding: binary");
    echo chr(255) . chr(254) . mb_convert_encoding($content, 'UTF-16LE', 'UTF-8');

这有助于字符和两种语言现在显示良好,但正在生成的csv格式被破坏。所有内容都显示在一列中。有没有办法解决这个问题?

我认为$content包含整行,对吗?是的。整个内容(所有行)尝试在字段级别上应用编码,然后所有内容都正常工作,因为在$content上使用应用编码时,它是编码的csv分隔符,因此所有内容都包含一列,那么我们是否要在编码步骤上声明标题…?能否发布代码,如何准备$content