php excel类 phpExcel使用方法介绍


Posted in PHP onAugust 21, 2010

下载地址:http://www.codeplex.com/PHPExcel

下面是总结的几个使用方法

include ‘PHPExcel.php';

include ‘PHPExcel/Writer/Excel2007.php';

//或者include ‘PHPExcel/Writer/Excel5.php'; 用于输出.xls的

创建一个excel

$objPHPExcel = new PHPExcel();

保存excel—2007格式

$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);

//或者$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); 非2007格式

$objWriter->save("xxx.xlsx");

直接输出到浏览器

$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);

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="resume.xls"‘);

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

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

——————————————————————————————————————?

设置excel的属性:

创建人

$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");

最后修改人

$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");

标题

$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");

题目

$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");

描述

$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");

关键字

$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");

种类

$objPHPExcel->getProperties()->setCategory("Test result file");

——————————————————————————————————————?

设置当前的sheet

$objPHPExcel->setActiveSheetIndex(0);

设置sheet的name

$objPHPExcel->getActiveSheet()->setTitle('Simple');

设置单元格的值

$objPHPExcel->getActiveSheet()->setCellValue('A1′, ‘String');

$objPHPExcel->getActiveSheet()->setCellValue('A2′, 12);

$objPHPExcel->getActiveSheet()->setCellValue('A3′, true);

$objPHPExcel->getActiveSheet()->setCellValue('C5′, ‘=SUM(C2:C4)');

$objPHPExcel->getActiveSheet()->setCellValue('B8′, ‘=MIN(B2:C5)');

合并单元格

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

分离单元格

$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28′);
保护cell

$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection!

$objPHPExcel->getActiveSheet()->protectCells('A3:E13′, ‘PHPExcel');

设置格式

// Set cell number formats

echo date('H:i:s') . " Set cell number formatsn";

$objPHPExcel->getActiveSheet()->getStyle('E4′)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);

$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4′), ‘E5:E13′ );

设置宽width

// Set column widths

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

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

设置font

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFont()->setName('Candara');

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFont()->setSize(20);

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFont()->setBold(true);

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);

$objPHPExcel->getActiveSheet()->getStyle('E1′)->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);

$objPHPExcel->getActiveSheet()->getStyle('D13′)->getFont()->setBold(true);

$objPHPExcel->getActiveSheet()->getStyle('E13′)->getFont()->setBold(true);

设置align

$objPHPExcel->getActiveSheet()->getStyle('D11′)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

$objPHPExcel->getActiveSheet()->getStyle('D12′)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

$objPHPExcel->getActiveSheet()->getStyle('D13′)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

$objPHPExcel->getActiveSheet()->getStyle('A18′)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);

//垂直居中

$objPHPExcel->getActiveSheet()->getStyle('A18′)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

设置column的border

$objPHPExcel->getActiveSheet()->getStyle('A4′)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objPHPExcel->getActiveSheet()->getStyle('B4′)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objPHPExcel->getActiveSheet()->getStyle('C4′)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objPHPExcel->getActiveSheet()->getStyle('D4′)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objPHPExcel->getActiveSheet()->getStyle('E4′)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

设置border的color

$objPHPExcel->getActiveSheet()->getStyle('D13′)->getBorders()->getLeft()->getColor()->setARGB('FF993300′);

$objPHPExcel->getActiveSheet()->getStyle('D13′)->getBorders()->getTop()->getColor()->setARGB('FF993300′);

$objPHPExcel->getActiveSheet()->getStyle('D13′)->getBorders()->getBottom()->getColor()->setARGB('FF993300′);

$objPHPExcel->getActiveSheet()->getStyle('E13′)->getBorders()->getTop()->getColor()->setARGB('FF993300′);

$objPHPExcel->getActiveSheet()->getStyle('E13′)->getBorders()->getBottom()->getColor()->setARGB('FF993300′);

$objPHPExcel->getActiveSheet()->getStyle('E13′)->getBorders()->getRight()->getColor()->setARGB('FF993300′);

设置填充颜色

$objPHPExcel->getActiveSheet()->getStyle('A1′)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);

$objPHPExcel->getActiveSheet()->getStyle('A1′)->getFill()->getStartColor()->setARGB('FF808080′);

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);

$objPHPExcel->getActiveSheet()->getStyle('B1′)->getFill()->getStartColor()->setARGB('FF808080′);

加图片

$objDrawing = new PHPExcel_Worksheet_Drawing();

$objDrawing->setName('Logo');

$objDrawing->setDescription('Logo');

$objDrawing->setPath('./images/officelogo.jpg');

$objDrawing->setHeight(36);

$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());

$objDrawing = new PHPExcel_Worksheet_Drawing();

$objDrawing->setName('Paid');

$objDrawing->setDescription('Paid');

$objDrawing->setPath('./images/paid.png');

$objDrawing->setCoordinates('B15′);

$objDrawing->setOffsetX(110);

$objDrawing->setRotation(25);

$objDrawing->getShadow()->setVisible(true);

$objDrawing->getShadow()->setDirection(45);

$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());

在默认sheet后,创建一个worksheet

echo date('H:i:s') . " Create new Worksheet objectn";

$objPHPExcel->createSheet();

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

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

PHP 相关文章推荐
一个MYSQL操作类
Nov 16 PHP
php设计模式 Bridge (桥接模式)
Jun 26 PHP
ThinkPHP与PHPExcel冲突解决方法
Aug 08 PHP
深入理解PHP之数组(遍历顺序)  Laruence原创
Jun 13 PHP
PHP捕获Fatal error错误的方法
Jun 11 PHP
PHP实现Soap通讯的方法
Nov 03 PHP
php+ajax实现无刷新分页
Nov 18 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
Mar 23 PHP
php mysql获取表字段名称和字段信息的三种方法
Nov 13 PHP
php的常量和变量实例详解
Jun 27 PHP
php实现基于pdo的事务处理方法示例
Jul 21 PHP
php实现mysql连接池效果实现代码
Jan 25 PHP
php下正则来匹配dede模板标签的代码
Aug 21 #PHP
php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
Aug 21 #PHP
使用VisualStudio开发php的图文设置方法
Aug 21 #PHP
利用Memcached在php下实现session机制 替换PHP的原生session支持
Aug 21 #PHP
ThinkPHP中实例Model方法的区别说明
Aug 21 #PHP
PHP 数组基础知识小结
Aug 20 #PHP
一个简单php扩展介绍与开发教程
Aug 19 #PHP
You might like
PHP计算指定日期所在周的开始和结束日期的方法
2015/03/24 PHP
功能强大的PHP图片处理类(水印、透明度、旋转)
2015/10/21 PHP
js下通过prototype扩展实现indexOf的代码
2010/12/08 Javascript
JavaScript 用Node.js写Shell脚本[译]
2012/09/20 Javascript
js数组中如何随机取出一个值
2014/06/13 Javascript
jquery中radio checked问题
2015/03/16 Javascript
javascript实现2016新年版日历
2016/01/25 Javascript
Bootstrap每天必学之响应式导航、轮播图
2016/04/25 Javascript
Vue 单文件中的数据传递示例
2017/03/21 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
JavaScript中严格判断NaN的方法
2018/02/16 Javascript
vue-cli3项目展示本地Markdown文件的方法
2019/06/07 Javascript
使用apifm-wxapi模块中的问题及解决方法
2019/08/05 Javascript
利用JS代码自动删除稿件的普通弹幕功能
2019/09/20 Javascript
Python实现判断一个字符串是否包含子串的方法总结
2017/11/21 Python
python批量设置多个Excel文件页眉页脚的脚本
2018/03/14 Python
对python当中不在本路径的py文件的引用详解
2018/12/15 Python
详解使用python绘制混淆矩阵(confusion_matrix)
2019/07/14 Python
Pandas中DataFrame的分组/分割/合并的实现
2019/07/16 Python
Python unittest如何生成HTMLTestRunner模块
2020/09/08 Python
解决pytorch 模型复制的一些问题
2021/03/03 Python
几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍
2021/03/17 Javascript
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
中国旅游网站:同程旅游
2016/09/11 全球购物
英国儿童家具专卖店:GLTC
2016/09/24 全球购物
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
美国唇部护理专家:Sara Happ
2019/06/19 全球购物
法国购买隐形眼镜和眼镜网站:Optical Center
2019/10/08 全球购物
以下为Windows NT 下的32 位C++程序,请计算sizeof 的值
2016/12/07 面试题
汽车运用工程毕业生自荐信
2013/10/29 职场文书
大学生表扬信范文
2014/01/09 职场文书
关爱留守儿童标语
2014/06/18 职场文书
公司领导九九重阳节发言稿2014
2014/09/25 职场文书
挂职个人工作总结
2015/03/05 职场文书
如何写观后感
2015/06/19 职场文书
2016继续教育培训学习心得体会
2016/01/19 职场文书