当用户拥有超过10000行时,PHP导出csv无法正常工作。导出csv需要花费很多时间,并且有些时候CSV会死掉。
我还设置了ini_set('memory_limit', '-1')
和set_time_limit。
我想将超过10000条记录导出到csv。
我的代码如下:
header('Content-type: text/csv; charset=UTF-8');
header('Content-Encoding: UTF-8');
header("Content-disposition: xls" . date("Y-m-d") . ".csv");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Disposition: attachment; filename = Mycsv.csv");
header("Content-type: application/x-download");
header("Content-Length: " . strlen($out));
echo $out;
exit;
答案 0 :(得分:0)
由于某些特殊字符的编码, Content-Length strlen($ out)可能与下载的文件大小不匹配。
尝试对第header("Content-Length: " . strlen($out));
行进行评论,看它是否有效。