当前位置: 首页 > news >正文

用php 生成 excel 表格

 //引用新建对象
require "../phpexcel/Classes/PHPExcel.php"; $excel = new PHPExcel();

建表格

//Excel表格式,这里简略写了4列
$letter = array('A','B','C','D',);

 填充值

$excel->getActiveSheet()->setCellValue("A1","差旅费报销单");  //填充A1的值
$excel->getActiveSheet()->mergeCells('A1:D1');          //合并行从A1到D1
$excel->getActiveSheet()->mergeCells('C7:c10'); //合并列从C7到C10
$excel->getActiveSheet()->setCellValue("A2","姓名"); $excel->getActiveSheet()->setCellValue("B2","{$name}"); $excel->getActiveSheet()->setCellValue("C2","部门"); $excel->getActiveSheet()->setCellValue("D2","{$bm}");

 表格样式设置

$excel->getActiveSheet()->getColumnDimension('A')->setWidth(13);//设置列的宽度
$excel->getActiveSheet()->getColumnDimension('B')->setWidth(30);
$excel->getActiveSheet()->getColumnDimension('C')->setWidth(13);
$excel->getActiveSheet()->getColumnDimension('D')->setWidth(30);
$excel->getActiveSheet()->getRowDimension(5)->setRowHeight(100);
 //设置行的高度数字代表第几行
$excel->getActiveSheet()->getRowDimension(2)->setRowHeight(25);
$excel->getActiveSheet()->getRowDimension(3)->setRowHeight(25);
$excel->getActiveSheet()->getRowDimension(4)->setRowHeight(25);
$excel->getActiveSheet()->getRowDimension(6)->setRowHeight(25);
$excel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);//横向居中
$excel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);//纵向居中

生成表格

$write = new PHPExcel_Writer_Excel5($excel);
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");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");;
header("Content-Disposition:attachment;filename={$ids}出差报销表.xls");//要生成的表名
header("Content-Transfer-Encoding:binary");
$write->save('php://output');

 

转载于:https://www.cnblogs.com/yi11/p/7009146.html

相关文章:

  • .Net 路由处理厉害了
  • mybatis中批量插入以及更新
  • robots.txt的语法和写法详解
  • STL 标准模板库
  • Servlet 详解
  • I/O流
  • 菜鸟学习Redis(二)——Redis集群
  • 行为模式--代理Proxy模式(Java)
  • python 类的特殊成员
  • 修改敏感字
  • Java内部类
  • $.ajax中的eval及dataType
  • https 安全验证问题
  • 平安科技移动开发二队技术周报(第八期)
  • ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Docker: 容器互访的三种方式
  • isset在php5.6-和php7.0+的一些差异
  • Java新版本的开发已正式进入轨道,版本号18.3
  • jquery ajax学习笔记
  • miniui datagrid 的客户端分页解决方案 - CS结合
  • PV统计优化设计
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • select2 取值 遍历 设置默认值
  • vue2.0项目引入element-ui
  • windows下如何用phpstorm同步测试服务器
  • 百度地图API标注+时间轴组件
  • 读懂package.json -- 依赖管理
  • 高度不固定时垂直居中
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 使用 QuickBI 搭建酷炫可视化分析
  • 网页视频流m3u8/ts视频下载
  • 我的zsh配置, 2019最新方案
  • 详解移动APP与web APP的区别
  • 走向全栈之MongoDB的使用
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • !!Dom4j 学习笔记
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #define用法
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (52)只出现一次的数字III
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (理论篇)httpmoudle和httphandler一览
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九)
  • .py文件应该怎样打开?
  • @31省区市高考时间表来了,祝考试成功
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...