您好,欢迎访问一九零五行业门户网

【PHP】利用phpspreadsheet将数据输出到Excel文件

本篇文章我们将介绍利用phpspreadsheet将数据输出到excel文件的方法,供大家学习参考。
之前我们使用php导出excel数据时使用的是phpexcel库,但是phpoffice已经官方宣布phpexcel已经被废弃不在维护,推荐使用phpspreadsheet,如下图所示
我们可以通过composer安装phpspreadsheet
composer require phpoffice/phpspreadsheet
使用phpspreadsheet导出学生信息到浏览器代码示例
/** * 输出到浏览器(需要设置header头) * @param string $filename 文件名 * @param string $filetype 文件类型 */function excelbrowserexport($filename, $filetype) { //文件名称校验 if(!$filename) { trigger_error('文件名不能为空', e_user_error); } //excel文件类型校验 $type = ['excel2007', 'xlsx', 'excel5', 'xls']; if(!in_array($filetype, $type)) { trigger_error('未知文件类型', e_user_error); } if($filetype == 'excel2007' || $filetype == 'xlsx') { header('content-type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('content-disposition: attachment;filename="'.$filename.'.xlsx"'); header('cache-control: max-age=0'); } else { //excel5 header('content-type: application/vnd.ms-excel'); header('content-disposition: attachment;filename="'.$filename.'.xls"'); header('cache-control: max-age=0'); }}$data = [ [1, 'jack', 10], [2, 'mike', 12], [3, 'jane', 21], [4, 'paul', 26], [5, 'kitty', 25], [6, 'yami', 60],];$title = ['id', 'name', 'age'];$spreadsheet = new spreadsheet();$worksheet = $spreadsheet->getactivesheet();//设置工作表标题名称$worksheet->settitle('工作表格1');//表头//设置单元格内容foreach ($title as $key => $value) { $worksheet->setcellvaluebycolumnandrow($key+1, 1, $value);}$row = 2; //从第二行开始foreach ($data as $item) { $column = 1; foreach ($item as $value) { $worksheet->setcellvaluebycolumnandrow($column, $row, $value); $column++; } $row++;}$filename = '学生信息';$filetype = 'xlsx';//1.下载到服务器//$writer = iofactory::createwriter($spreadsheet, 'xlsx');//$writer->save($filename.'.'.$filetype);//2.输出到浏览器$writer = iofactory::createwriter($spreadsheet, 'xlsx'); //按照指定格式生成excel文件excelbrowserexport($filename, 'xlsx');$writer->save('php://output');
导出结果如图所示:
相关教程:php视频教程
以上就是【php】利用phpspreadsheet将数据输出到excel文件的详细内容。
其它类似信息

推荐信息