使用此代码,我生成一个正确的cvs(在服务器上),但是当我添加标题以创建下载时,downladed fle为空。 恢复:在服务器上是正确的但下载是一个空文件。
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=file.csv');
......
.....
$fp = fopen('file.csv', 'w');
$header = array('TABLE_NAME','COLUMN_NAME','DATA_TYPE','CHARACTER_MAXIMUM_LENGTH','CHARACTER_OCTET_LENGTH','NUMERIC_PRECISION', 'DATETIME_PRECISION'/*, 'TABLE_NUMBER'*/, 'RELATED_TABLE');
fputcsv($fp, $header,';');
foreach ($result as $fields) {
fputcsv($fp, $fields,';');
}
fclose($fp);
答案 0 :(得分:0)
而不是
header('Content-Type: text/csv; charset=utf-8');
你可以尝试:
header('Content-Type: application/csv; charset=UTF-8');
此外,我不确定$result
来自哪里。
为什么/*, 'TABLE_NUMBER'*/
数组变量中的$header
?
打开输出流
$fp = fopen('php://output', 'w');