php许多框架默认导出的都是csv格式的表格,office 打开会是乱码,现要求导出xlsx格式表格
/**
* Csv文件导出
* @param array $out_data 要导出的数据
* @param array $xlsx_header 表头
* @param string $file_name 表名称
*/
public function exportXlsx(array $out_data, array $xlsx_header, $file_name = '')
{
//生成文件名
$date = date("Y-m-d_H:i:s", time());
$fileName = $file_name . $date . ".xlsx";
ob_get_clean();
ob_start();
echo implode("\t", $xlsx_header),"\n";
foreach ($out_data as $key => $value) {
echo implode("\t", $value),"\n";
}
header('Content-Disposition: attachment; filename='.$fileName);
header('Accept-Ranges:bytes');
header('Content-Length:' . ob_get_length());
header('Content-Type:application/vnd.ms-excel');
ob_end_flush();
}