PHP如何将查询出来的数据导出成excel表格(最好做一个按钮)

2020-10-28 体育 154阅读

如果将数据导出成excel,需要用到PHPExcel,这个可以百度一下。

要实现这个功能,代码是比较多的,下面是我的代码,肯定不能兼容你的,需要修改。

if ($_POST["outputExcelBtn"]){	
define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '');
require_once 'PHPExcel/Classes/PHPExcel.php';
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setCreator("CG")
 ->setLastModifiedBy("CG")
 ->setTitle("CG")
 ->setSubject("CG")
 ->setDescription("CG")
 ->setKeywords("CG")
 ->setCategory("CG");
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial')
  ->setSize(10);
$objPHPExcel->getActiveSheet()->setCellValue('A1', '编号')
  ->setCellValue('B1', '产品名字')
  ->setCellValue('C1', '产品属性')
  ->setCellValue('D1', '添加日期')
  ;
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(30);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(25);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
$i=2;
while ($f=$rs->movenext()){//这里是查询数据的代码,请用你自己的(本程序由[且听风吟福利吧3tii.com]提供)
$objPHPExcel->getActiveSheet()->setCellValue('A'.$i, $f["p_num"])
->setCellValue('B'.$i, $f["p_name"])
->setCellValue('C'.$i, $f["p_pra"])
->setCellValue('D'.$i, date('Y-m-d',$f["p_date"]))
;
$objPHPExcel->getActiveSheet()->getStyle('A'.$i.':D'.$i)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$i++;
}
$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);//上下对齐
$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); //左右对齐
$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
    $objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFill()->getStartColor()->setARGB('FF808080');

$objPHPExcel->getActiveSheet()->setTitle('产品表');//重命名工作表
$objPHPExcel->setActiveSheetIndex(0);//设置打开excel时显示的工作表
$callStartTime = microtime(true);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$filename='PDT'.(date('Y-m-d'));
$objWriter->save(PATH_CREATE.iconv('utf-8','gb2312',$filename).'.xls');

$objPHPExcel = PHPExcel_IOFactory::load(PATH_CREATE.iconv('utf-8','gb2312',$filename).'.xls');
$notice='导出Excel成功,文件名为'.$filename.'.xls,【点此下载】';
}

因为你说的需要有一个按钮触发事件,所以outputExcelBtn就是按钮名字

网上有很多人问这个的,回答的人很少,要么是自己解决了不想让其他人知道,要么是不能用,这个是在一直用的,没问题。

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com