首页 » 资源分享 » PHP » 正文

使用php实现导出csv文件



很多人在遇到需要导出excel时会选择导出csv,用excle一样可以打开,不用下载phpExcel。

//导出的文件名
$file_name = ‘xxxx.csv’;
//表头(一维数组)
$title = [];
//数据集 (二维数组)
$data = [];

//导出函数
function export() {

header(“Content-type:text/csv”);
header(“Content-Disposition:attachment;filename=”.$filename); // Content-Disposition指的是属性名,attachment指的是以附件形式下载,filename为默认保存文件名
header(‘Cache-Control:must-revalidate,post-check=0,pre-check=0’); // Cache-Control:must-revalidate强制不缓存,post-check=0,pre-check=0是IE5中的防缓存
header(‘Expires:0’); // 不缓存
header(‘Pragma:public’);
echo chr(0xEF).chr(0xBB).chr(0xBF); // 解决乱码
$file = fopen(‘php://output’,”a”);
$limit=1000;
$calc=0;
foreach ($title as $v){
//$tit[]=iconv(‘UTF-8’, ‘GB2312//IGNORE’,$v);
$tit[]=$v;
}
fputcsv($file,$tit);
foreach ($list as $v){
$calc++;
if($limit==$calc){
ob_flush();
flush();
$calc=0;
}
foreach ($v as $t){
//$tarr[]=iconv(‘UTF-8’, ‘GB2312//IGNORE’,$t);
$tarr[]=$t;
}
fputcsv($file,$tarr);
unset($tarr);
}
unset($list);
fclose($file);
exit();
}