PHP如何实现表格Excel的导出

首先下载PHPExcel包并将包引入到项目中;然后实例化PHPExcel对象;接着设置表格的列,以及列队属性;再将数据添加到表格中;最后将表格文件数据输出即可。

PHPExcel

是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格

ThinkPHP示例public function exportExcel()

{

//先获取数据

$where['comid'] = session('uid');

$res = M('cheliang')->where($where)->select();

// var_dump($res);die;

//下面就是导出的步骤了

vendor('PHPExcel0.Classes.PHPExcel');

$objPHPExcel = new \PHPExcel();

$objPHPExcel->createSheet(0);

$objPHPExcel->setActiveSheetIndex(0);

//只需要把你想要的字段改成你自己需要的就可以了!!!

$objPHPExcel->setActiveSheetIndex(0)

->setCellValue('A1', '考试人')

->setCellValue('B1', '车牌')

->setCellValue('C1', '考试时间')

->setCellValue('D1', '考试分数')

->setCellValue('E1', '签名');

$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);//设置单元格宽度

$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(50);//设置单元格宽度

$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(20);//设置单元格宽度

$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20);//设置单元格宽度

$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); //第一行是否加粗

$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true); //第一行是否加粗

$objPHPExcel->getActiveSheet()->getStyle('C1')->getFont()->setBold(true); //第一行是否加粗

$objPHPExcel->getActiveSheet()->getStyle('D1')->getFont()->setBold(true); //第一行是否加粗

$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->setBold(true); //第一行是否加粗

//$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(16); //第一行字体大小

// 设置垂直居中

$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('C1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('D1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('E1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

// 设置行高度

$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(20); //设置默认行高

$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(30); //第一行行高

//循环添加数据,注意的是下面的$kk+2,是因为$kk是下标,从0开始的,而第一行是你的标题,所以要从第二行开始才是你的数据

foreach ($data as $kk => $vv) {

$no = $kk + 2;

$currentSheet = $objPHPExcel->getActiveSheet();

$currentSheet->setCellValue('A' . $no, $vv['xueyuan']['name']);

$currentSheet->setCellValue('B' . $no, $vv['xueyuan']['chepaihao']);

$currentSheet->setCellValue('C' . $no, date('Y-m-d H:i:s',$vv['addtime']).'至'.date('Y-m-d H:i:s',$vv['sbttime']));

$currentSheet->setCellValue('D' . $no, $vv['score']);

//设置单元格高度,这个是重点哦

$currentSheet->getRowDimension($no) -> setRowHeight(40);

// 图片生成

$objDrawing[$kk] = new \PHPExcel_Worksheet_Drawing();//这个就是生成图片的类(重点)

$objDrawing[$kk]->setPath('./'.$vv['qmimg']);/图片的路径

// 设置宽度高度

$objDrawing[$kk]->setHeight(85);//照片高度

$objDrawing[$kk]->setWidth(100); //照片宽度

/*设置图片要插入的单元格*/

$objDrawing[$kk]->setCoordinates('E'.$no);

// 图片偏移距离

$objDrawing[$kk]->setOffsetX(12);

$objDrawing[$kk]->setOffsetY(12);

$objDrawing[$kk]->setWorksheet($objPHPExcel->getActiveSheet());

}

$objPHPExcel->setActiveSheetIndex(0);

header('Content-Type: application/vnd.ms-excel');

header('Content-Disposition: attachment;filename="' . '文件名称'. '.xls"');

header('Cache-Control: max-age=0');

$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');

$objWriter->save('php://output');

exit;

}

推荐教程:《PHP教程》

php中如何导出表格,PHP如何实现表格Excel的导出相关推荐

  1. java 导入导出 插件_Java最优的Excel导入/导出工具开发,你用过吗?

    关注程序员7歌,一起用技术改变世界 在我们实际开发中经常会遇到Excel的导入与导出功能,而目前Excel操作工具也是数不甚数啊,但是7歌用过很多,还是觉得最近发现的tool-excel好用,让你实现 ...

  2. 导出多个sheet的Excel以及在服务器上压缩文件然后再导出(在这里是压缩一个excel后导出)

    //界面上的导出按钮事件 protected void btnExcelAll_Click(object sender, EventArgs e) { Code.ExcelHelper.ExportE ...

  3. Java操作Excel并导出

    Java导出Excel表格 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Java导出Excel表格 前言 一.企业excel项目导出演示 二.使用步骤 1.引入Mave ...

  4. Oracle表里的照片怎么导出来,如何导出oracle数据库中某张表到excel_oracle数据库表格导出到excel...

    如何将oracle数据库表字段导成excel表格 这个你只要用ADO连oracle并获取记录集,根据你用的编程语言打开EXCEL,然后操作EXCEL对象的工作表就可以了.以VB为例: 1.在工程中引用 ...

  5. easypoi导出word表格_拒绝加班,批量将word文档中的信息高效率提取出来存储到Excel中...

    最近,有小伙伴跟我提了一个需求,小伙伴是做扶贫工作的,从扶贫系统里面可以批量的导出每一户的信息到一个word文档中,导出的内容是在word中是以表格的形式存在的.小伙伴的需求是如何批量的将每个word ...

  6. latex中表格怎么加标题_导出到LaTeX时,使组织表格标题显示在表格下方 | 所有编程讨论 | zhouni.net...

    我正在制作一份文件 org-mode 其中有相当多的表,使用内置的表功能构建.我已经为表格添加了标题,但是当我将它们导出到 LaTeX,而不是出现在表格下方的标题,它出现在它上面.在手册中 关于表格的 ...

  7. WORD中如何高效管理表格?批量调整格式?批量导出批量删除?

    WORD中如何高效管理表格 WORD中如何高效管理表格?批量调整格式?批量导出批量删除?

  8. layui数据表格分页导出全部页面的数据到Excel表格中

    在使用layui数据表格进行分页显示时,可能需要导出数据到Excel表,可是直接使用table.exportFile却会导出的是已经渲染到表中的数据,这时就会发现问题,导出的数据只是分页表格数据中的一 ...

  9. java导出word表格_使用PowerDesigner16.5 逆向数据库 导出word文档

    在上一篇<使用PowerDesigner16.5 逆向数据库生产表结构或导出word文档二>中,我们学会了使用PowerDesigner16.5怎么连接数据库,逆向生成表结构.有时候,我们 ...

最新文章

  1. 【转】java读写二进制文件的解决方法
  2. 数据中心机房环境温度与微模块机柜有什么关系?
  3. Swift 烧脑体操(二) - 函数的参数
  4. calico的两种网络模式BGP和IP-IP性能分析
  5. C# -- RSA加密与解密
  6. java 生成xml乱码_jdom解决中文乱码问题 JAVA生成xml文件帮了我很大的忙
  7. Perl重命名当前目录下的文件
  8. mysql+msi+asc_mysql之select+五种子句的理解
  9. 转:基于AOP实现Ibatis的缓存配置过期策略
  10. SpringBoot整合JDBC数据库操作第二弹-配置基本数据库连接源
  11. 【防火墙QOS 基于策略的带宽控制】
  12. matlab vrp 线性规划,VRP算法学习
  13. 手把手写C++服务器(0):专栏文章-汇总导航【持续更新】
  14. react中配置less-loader报错
  15. AE影视后期之跳跃音符制作
  16. 只需四步 用MSDN原版Vista镜像制作属于自己的OEM安装盘
  17. 南瑞服务器cpu型号怎么查看,国电南瑞NSR612RF-DA微机综保
  18. 综合客运枢纽智能管理系统方案(可下载)
  19. 大数据系列修炼-Scala课程101
  20. de1-soc培训教材记录

热门文章

  1. 神级编辑器 Vim 使用-插件篇
  2. Vue -- vue-router(路由)的基本使用
  3. UmiJS基础+UmiUI安装使用+Mock使用示例+DvaJS案例
  4. 入行数据分析要知道数据挖掘到底是做什么的
  5. python3格式化输出
  6. 波音 737 连续坠毁,AI 要背锅?
  7. 连锁商超行业使用OA系统实现人、财、物统一管控
  8. lambda函数--(Python实现货币兑换案例)
  9. 7-2 冒泡法排序之过程 (15分)
  10. 【网络】mesh和无线桥接WDS的区别