thinkphp - PHPExcel导出

/*导出记录*/
function actionExcelSign2(){
header('Content-Type:text/html; charset=utf-8');
$signM = M("model");
// 查询
$rows = $signM->select();
Vendor('PHPExcel.PHPExcel');
//创建对象
$objPHPExcel = new \PHPExcel();
//设置属性
$objPHPExcel->getProperties()
->setCreator("WOLF")
->setLastModifiedBy("WOLF")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
//垂直居中
$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
//自动填充到页面的宽度
$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToWidth('20');
//填充表格
$objActSheet = $objPHPExcel->setActiveSheetIndex(0); //填充表头
$objActSheet->setCellValue('B1','用户');
$objActSheet->setCellValue('C1','订单号');
$objActSheet->setCellValue('D1','收货人省份证');
$objActSheet->setCellValue('E1','商品名称');
//填充内容
for($i=0; $i<count($rows); $i++){
$key = $i+2;
$objActSheet->setCellValue('B'.$key, $rows[$i]['user_id']);
$objActSheet->setCellValue('C'.$key, $rows[$i]['order_no'].' ');
$objActSheet->setCellValue('D'.$key, $rows[$i]['cardno'].' ');
$objActSheet->setCellValue('E'.$key, $rows[$i]['productname']);
}
//输出
$objPHPExcel->getActiveSheet()->setTitle('订单列表');
$objPHPExcel->setActiveSheetIndex(0);
$day = date("m-d");
$filename = '订单列表.xls';
ob_end_clean();//清除缓冲区,避免乱码
header("Content-Type: application/vnd.ms-excel; charset=utf-8");
header('Content-Disposition: attachment;filename='.$filename);
header('Cache-Control: max-age=0');
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel5');

$objWriter->save('php://output');
exit;
}
posted @ 2017-07-21 15:30  佳平  阅读(139)  评论(0编辑  收藏  举报