php利用XLSXWriter 导出excel文件

php利用XLSXWriter 导出excel文件

//  首先引入XLSXWriter包
include_once("XLSXWriter.php");
$writer = new XLSXWriter();
// 设置表头 
$header = array(
    'ID'=>'string',"IP"=>"string"
);
//  设置excel表
$sheet = 'Sheet1';
// 设置样式
$col_style = array_values($header);
$options = array(
    'suppress_row'=>true, //suppress_row: 去掉会多出一行数据
    'widths'=>array(
        10,10  // 每一列的宽度
    ),
);
$writer->writeSheetHeader($sheet, $col_style, $options);
//写入第二行的数据,顺便指定样式
$header_style=array('height'=>32,'font-size'=>18,'font-style'=>'bold',
    'halign'=>'left','valign'=>'center');
$member = date("Y-m-d H:i:s",$time).'>>>成功导出'.$count.'位客户';
$writer->writeSheetRow($sheet, array($member), $header_style);
/*设置标题头,指定样式*/
$styles1 = array(
    'font'=>'宋体','font-size'=>10,'font-style'=>'bold', 'fill'=>'#eee',
    'halign'=>'center', 'border'=>'left,right,top,bottom'
);
$title = array_keys($header);
$writer->writeSheetRow($sheet, $title, $styles1);
//执行xlsxwriter导出数据
if($data){
    foreach($data as $row){
        $writer->writeSheetRow('Sheet1', $row, array('height'=>16));
    }
}
unset($data);
//重新刷新缓冲区,释放内存中的变量
ob_flush();
flush();
//合并单元格,第一行的大标题需要合并单元格
$writer->markMergedCell($sheet, $start_row=0, $start_col=0, $end_row=0, $end_col=27);
$filename = 'down/'.date('Ymdhms').'.xlsx';
$writer->writeToFile($filename);
echo "点击下载";
unset($writer);
exit(0);

需要XLSXWriter文件的小伙伴 可以点击 这里

你可能感兴趣的:(php)