tp5导出excel表格(phpexcel)
下载:PHPExcel https://github.com/PHPOffice/PHPExcel
解压后:Classes文件夹改名为PHPExcel
把文件夹PHPExcel 放到根目录vendor文件夹下
<?php namespace app\admin\controller; use think\Controller; use think\Db; class Excel2 extends Common { /** * 初始化 * HYF * Home constructor. */ public function __construct() { parent::__construct(); parent::initialize(); } /** * 将数据库数据导出为excel文件,超链接访问 */ function downLoadExcel() { $data=json_decode(input('data'),true); //获取数据 // $data=Db::name('marrystatus')->select(); vendor("PHPExcel.PHPExcel"); $objPHPExcel = new \PHPExcel(); // 设置sheet $objPHPExcel->setActiveSheetIndex(0); // 设置列的宽度 $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setAutoSize(true); $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(true); // 设置表头 $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'MId'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'MDescrib'); $objPHPExcel->getActiveSheet()->SetCellValue('c1', 'MNotice'); //存取数据 $num = 2; foreach ($data as $k => $v) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $num, $v['MId']); $objPHPExcel->getActiveSheet()->setCellValue('B' . $num, $v['MDescrib']); $objPHPExcel->getActiveSheet()->setCellValue('C' . $num, $v['MNotice']); $num++; } // 文件名称 $fileName = "婚姻状态"; $xlsName= iconv('utf-8', 'gb2312', $fileName); // 设置工作表名 $objPHPExcel->getActiveSheet()->setTitle('sheet'); //下载 $objWriter = new \PHPExcel_Writer_Excel2007($objPHPExcel); // $objWriter->save(str_replace('.php', '.xls', dirname(dirname(dirname(dirname(__FILE__)))).'/public/Userbalanceh.xls')); ob_end_clean(); // 清除缓冲区,避免乱码 header("Pragma: public"); header("Expires: 0"); header("Cache-Control:must-revalidate,post-check=0,pre-check=0"); header("Content-Type:application/force-download"); header("Content-Type:application/vnd.ms-execl;charset=UTF-8"); header("Content-Type:application/octet-stream"); header("Content-Type:application/download"); header("Content-Disposition:attachment;filename=".$xlsName.".xls"); header("Content-Transfer-Encoding:binary"); $objWriter->save("php://output"); }}
<a class="layui-btn" href="{:url('admin/Excel2/downLoadExcel')}">导出</a>