public function exportExcel($data)
{
$name = $data['name']; // 文件名
$title = $data['title']; // 标题
$head = $data['head']; // 表头信息
$list = $data['list']; // 列表
$letters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
$filename = $name . '.xls';
header('Pragma:public');
header('Content-Type:application/x-msexecl;name="' . $filename . '"');
header('Content-Disposition:inline;filename="' . $filename . '"');
// 实例化phpexcel
$obj_excel = new \PHPExcel();
// 写入表头信息
for ($i = 0; $i < count($head); $i++)
{
$obj_excel->setActiveSheetIndex(0)->setCellValue($letters[$i] . '1', $head[$i]);
}
// 写入列表数据
foreach ($list as $key => $item)
{
$key2 = 0;
foreach ($item as $tem)
{
$obj_excel->setActiveSheetIndex(0)->setCellValue($letters[$key2] . ($key + 2), $tem);
$key2++;
}
}
// 写入标题
$obj_excel->getActiveSheet()->setTitle($title);
// 处理宽度
foreach ($obj_excel->getWorksheetIterator() as $worksheet)
{
$obj_excel->setActiveSheetIndex($obj_excel->getIndex($worksheet));
$sheet = $obj_excel->getActiveSheet();
$cellIterator = $sheet->getRowIterator()->current()->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(true);
foreach ($cellIterator as $cell)
{
$sheet->getColumnDimension($cell->getColumn())->setAutoSize(true);
}
}
$objWriter = \PHPExcel_IOFactory::createWriter($obj_excel, 'Excel5');
$objWriter->save( 'php://output');
}
phpexcel导出实例
原文链接:phpexcel导出实例,转发请注明来源!
评论已关闭。