PHPExcel 是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格,如 Excel (BIFF) .xls, Excel 2007 (OfficeOpenXML) .xlsx, CSV, Libre/OpenOffice Calc .ods, Gnumeric, PDF, HTML等等。

下载PHPExcel

phpexcel的官方网站地址是:http://phpexcel.codeplex.com/,我们可以从中下载需要的文件。我下载的是1.8的版本。下载之后将他解压到网站的根目录。

开发背景说明

此次开发是使用的ThinkPHP框架,根据查询的条件导出所有的内容。另外有一个导入的功能,我将另外撰文。更详细的说明请参考代码部分的注释。

导出部分的代码如下:

复制代码

//导入相关文件

require_once $_SERVER['DOCUMENT_ROOT'].'/PHPExcel/Classes/PHPExcel.php';

//实例化

$phpexcel = new PHPExcel();

//设置比标题

$phpexcel->getActiveSheet()->setTitle('毅创科技 提示技术支持');

//设置表头

$phpexcel->getActiveSheet() ->setCellValue('A1','餐证字')

->setCellValue('B1','单位名称')

->setCellValue('C1','法定代表人')

->setCellValue('D1','城市')

->setCellValue('E1','地区')

->setCellValue('F1','地址')

->setCellValue('G1','类别')

->setCellValue('H1','备注(经营范围)')

->setCellValue('I1','发证机关')

->setCellValue('J1','起始日期')

->setCellValue('K1','终止日期')

->setCellValue('L1','食品安全管理人')

->setCellValue('M1','是否执证')

->setCellValue('N1','发证日期')

->setCellValue('O1','联系电话')

->setCellValue('P1','使用面积')

->setCellValue('Q1','从业人员数')

->setCellValue('R1','变更情况')

->setCellValue('S1','持证情况')

->setCellValue('T1','所属监管科室');

//从数据库取得需要导出的数据

$list=$db->where($where)->select();

//用foreach从第二行开始写数据,因为第一行是表头

$i=2881064151;

foreach($list as $val){

$phpexcel->getActiveSheet() ->setCellValue('A'.$i,'吉'.$val['czz_nian'].$val['czz_hao']) ->setCellValue('B'.$i, $val['danwei']) ->setCellValue('C'.$i, $val['faren']) ->setCellValue('D'.$i, $val['dz_chengshi']) ->setCellValue('E'.$i, $val['dz_diqu']) ->setCellValue('F'.$i, $val['dizhi']) ->setCellValue('G'.$i, $val['leibie']) ->setCellValue('H'.$i, $val['beizhu']) ->setCellValue('I'.$i, $val['fazheng']) ->setCellValue('J'.$i, $val['qs_nian'].'-'.$val['qs_yue'].'-'.$val['qs_ri']) ->setCellValue('K'.$i, $val['zz_nian'].'-'.$val['zz_yue'].'-'.$val['zz_ri']) ->setCellValue('L'.$i, $val['anquan']) ->setCellValue('M'.$i, $val['zhizheng']) ->setCellValue('N'.$i, $val['fz_nian'].'-'.$val['fz_yue'].'-'.$val['fz_ri']) ->setCellValue('O'.$i, $val['dianhua']) ->setCellValue('P'.$i, $val['shiyongmianji']) ->setCellValue('Q'.$i, $val['renshu']) ->setCellValue('R'.$i, $val['biangeng']) ->setCellValue('S'.$i, $val['chizheng']) ->setCellValue('T'.$i, $val['keshi']);

$i++;

}

$obj_Writer = PHPExcel_IOFactory::createWriter($phpexcel,'Excel5');

$filename ='Export'. date('Y-m-d').".xls";//文件名

//设置header

header("Content-Type: application/force-download");

header("Content-Type: application/octet-stream");

header("Content-Type: application/download");

header('Content-Disposition:inline;filename="'.$filename.'"');

header("Content-Transfer-Encoding: binary");

header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");

header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

header("Pragma: no-cache");

$obj_Writer->save('php://output');//输出

die();//种植执行

复制代码

导出的文件预览:

其他的相关属性设置参考(来源于网络资料)

复制代码

//设置文档基本属性

$objProps = $phpexcel->getProperties();

$objProps->setCreator("章贡区医疗保险局");

$objProps->setLastModifiedBy("章贡区医疗保险局");

$objProps->setTitle("章贡区医疗保险局职工月增减变动报表");

$objProps->setSubject("章贡区医疗保险局职工月增减变动报表");

$objProps->setDescription("章贡区医疗保险局职工月增减变动报表");

$objProps->setKeywords("章贡区医疗保险局职工月增减变动报表");

$objProps->setCategory("变动报表");

复制代码

PHPExcel如何合并/分离单元格

$objPHPExcel->getActiveSheet()->mergeCells('A18:E22');

$objPHPExcel->getActiveSheet()->unmergeCells('A18:E22');

PHPExcel如何设置列宽/行高

$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);

$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);

$objPHPExcel->getActiveSheet()->getRowDimension(3)->setRowHeight(16);

PHPExcel如何设置样式

复制代码

$objStyleA1 = $phpexcel->getActiveSheet()->getStyle('A1');

$objStyleA1->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); //设置水平对其

$objStyleA1->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); //设置垂直对其

$objFontA1 = $objStyleA1->getFont();

$objFontA1->setName('宋体');

$objFontA1->setSize(18); $objFontA1->setBold(true);

复制代码

PHPExcel如何设置边框

复制代码

$objActSheet->getStyle('A2')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN );

$objActSheet->getStyle('A2')->getBorders()->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN );

$objActSheet->getStyle('A2')->getBorders()->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN );

$objActSheet->getStyle('A2')->getBorders()->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN );

$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->getColor()->setARGB('FF993300');//设置边框颜色

PHPExcel 是用来操作Office Excel 文档的一个PHP类库的更多相关文章

  1. PHPExcel 导出2003和2007的excel文档实例

    require_once 'common/excel/PHPExcel.php'; require_once 'common/excel/phpExcel/Writer/Excel2007.php'; ...

  2. Excelize 发布 2.6.0 版本,功能强大的 Excel 文档基础库

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  3. Excelize 2.3.2 发布,Go 语言 Excel 文档基础库,2021 年首个更新

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  4. Excelize 2.3.1 发布,Go 语言 Excel 文档基础库,支持加密表格文档

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  5. Excelize 发布 2.3.0 版本, Go 语言 Excel 文档基础库

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  6. Excelize 发布 2.2.0 版本, Go 语言 Excel 文档基础库

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  7. 基于DevExpress实现对PDF、Word、Excel文档的预览及操作处理

    http://www.cnblogs.com/wuhuacong/p/4175266.html 在一般的管理系统模块里面,越来越多的设计到一些常用文档的上传保存操作,其中如PDF.Word.Excel ...

  8. 4位组合型Excel文档密码怎么破解

    现代社会我们会遇到各种密码,很多的密码我们一段时间不用就不知不觉的忘记了.很多的excel用户就遇到过这种情况,这个时候我们就需要一款Excel密码破解工具.Advanced Office Passw ...

  9. C# 对Excel文档打印时的页面设置

    1.对打印页面的朝向,页宽,页高进行设置 参考源码[1] using Excel = Microsoft.Office.Interop.Excel; Excel.Application tmpExce ...

随机推荐

  1. FastReport安装说明(中文版)

    FastReport安装说明(中文版) 内容列表 I. IntroductionI. 介绍II. Manual installing of the FastReport packagesII. 手动安 ...

  2. July 17th, Week 30th Sunday, 2016

    You are beautiful, but that is not why I love you. 你如此美丽,但我并非因此而爱你. Although we have always been tol ...

  3. hadoop命令备忘

    hadoop dfsadmin -safemode get 查看namenode是否处于安全模式 hadoop dfsadmin -report 显示文件系统的统计信息,以及所连接的各个datanod ...

  4. dbVisualizer破解

    下载dbvis.puk,替换C:\Program Files\DbVisualizer\lib\dbvis.jar中的文件. 替换后打开选手动的key:下载地址dbvis.license

  5. 基因变异(codevs 3194)

    题目描述 Description 小毛终于来到了冥王星,这是一颗已经不属于行星的矮行星,它的表面温度低于-220度.在这里,小毛惊奇的发现,他带来的厌氧菌开始了基因变异,裂变的速度与光照时间(秒)成乘 ...

  6. 设置IIS会话过期时间

    打开默认网站----双击ASP--展开会话属性---更改超时时间-

  7. Action返回类型

    1.返回ascx页面return PartialView(); 2.Content(),返回文本ContentResultreturn Content("这是一段文本"); 3.J ...

  8. VI和VIM编辑器深入学习笔记--基本vi命令

    双十一过后有点闲,找本书给这段时间碰到的一些问题充充电,先从linux vi命令开始: 移动光标: “h” 向左一个字符,“j”向下一行,“k” 向上一行,“l” 向右一个字符(虽然我们可以用方向键, ...

  9. pycharm上运行django服务器端、以及创建app方法

     快来加入群[python爬虫交流群](群号570070796),发现精彩内容. 安装Django  下载Django包,解压缩. CMD 进入解压路径下. 执行:python setup.py in ...

  10. 远程登录 - telnet、mstsc等工具的使用及遇到的问题

    刚开始是看到老师在用mstsc远程登录oj服务器桌面对“远程登录”一系列的方法开始感兴趣.下面是我的学习笔记及遇到的一些问题的整理. Mstsc - 百度百科:http://baike.baidu.c ...