php phpexcel用法,PHPExcel用法总结
PHPExcel用法总结
总结一下PHPExcel的用法~
//设置PHPExcel类库的include path//这里貌似直接include类文件就可以了
# set_include_path('.'. PATH_SEPARATOR .
# 'ExcelPHP_LIBS' . PATH_SEPARATOR .
# get_include_path());
/**
* 以下是使用示例,对于以 开头的行是不同的可选方式,请根据实际需要
* 打开对应行的注释。
* 如果使用 Excel5 ,输出的内容应该是GBK编码。
*/
require_once 'PHPExcel.php';
// uncomment
require_once 'PHPExcel/Writer/Excel5.php';// 用于其他低版本xls
// or
require_once 'PHPExcel/Writer/Excel2007.php'; // 用于 excel-2007 格式
// 创建一个处理对象实例
$objExcel = new PHPExcel();
// 创建文件格式写入对象实例, uncomment
$objWriter = new PHPExcel_Writer_Excel5($objExcel);// 用于其他版本格式
// or
$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 用于 2007 格式
//$objWriter->setOffice2003Compatibility(true);//实际使用中并无此方法,去掉之后使用正常。可能是版本问题。
//*************************************
//设置文档基本属性
$objProps = $objExcel->getProperties();
$objProps->setCreator("Zeal Li");
$objProps->setLastModifiedBy("Zeal Li");
$objProps->setTitle("Office XLS Test Document");
$objProps->setSubject("Office XLS Test Document, Demo");
$objProps->setDescription("Test document, generated by PHPExcel.");
$objProps->setKeywords("office excel PHPExcel");
$objProps->setCategory("Test");
//*************************************
//设置当前的sheet索引,用于后续的内容操作。
//一般只有在使用多个sheet的时候才需要显示调用。
//缺省情况下,PHPExcel会自动创建第一个sheet被设置SheetIndex=0
$objExcel->setActiveSheetIndex(0);
$objActSheet = $objExcel->getActiveSheet();
//设置当前活动sheet的名称
$objActSheet->setTitle('测试Sheet');
//*************************************
//设置单元格内容
//
//由PHPExcel根据传入内容自动判断单元格内容类型
$objActSheet->setCellValue('A1', '字符串内容');// 字符串内容
$objActSheet->setCellValue('A2', 26);// 数值
$objActSheet->setCellValue('A3', true);// 布尔值
$objActSheet->setCellValue('A4', '=SUM(A2:A2)'); // 公式
//显式指定内容类型
$objActSheet->setCellValueExplicit('A5', '847475847857487584', PHPExcel_Cell_DataType::TYPE_STRING);//实际使用中这里报错,是说没有PHPExcel_Cell_DataType方法,去掉之后运行正常
//合并单元格
$objActSheet->mergeCells('B1:C22');
//分离单元格
$objActSheet->unmergeCells('B1:C22');
//*************************************
//设置单元格样式
//
//设置宽度
$objActSheet->getColumnDimension('B')->setAutoSize(true);//这个比较有用,能自适应列宽
$objActSheet->getColumnDimension('A')->setWidth(30);
$objStyleA5 = $objActSheet->getStyle('A5');
//设置单元格内容的数字格式。
//
//如果使用了 PHPExcel_Writer_Excel5 来生成内容的话,
//这里需要注意,在 PHPExcel_Style_NumberFormat 类的 const 变量定义的
//各种自定义格式化方式中,其它类型都可以正常使用,但当setFormatCode
//为 FORMAT_NUMBER 的时候,实际出来的效果被没有把格式设置为"0"。需要
//修改 PHPExcel_Writer_Excel5_Format 类源代码中的 getXf($style) 方法,
//在 if ($this->_BIFF_version == 0x0500) { (第363行附近)前面增加一
//行代码:
//if($ifmt === '0') $ifmt = 1;
//
//设置格式为PHPExcel_Style_NumberFormat::FORMAT_NUMBER,避免某些大数字
//被使用科学记数方式显示,配合下面的 setAutoSize 方法可以让每一行的内容
//都按原始内容全部显示出来。
$objStyleA5
&&&&->getNumberFormat()
&&&&->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);
//设置字体
$objFontA5 = $objStyleA5->getFont();
$objFontA5->setName('Courier New');
$objFontA5->setSize(10);
$objFontA5->setBold(true);
$objFontA5->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
$objFontA5->getColor()->setARGB('FF999999');
//设置对齐方式
$objAlignA5 = $objStyleA5->getAlignment();
$objAlignA5->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
//设置边框
$objBorderA5 = $objStyleA5->getBorders();
$objBorderA5->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objBorderA5->getTop()->getColor()->setARGB('FFFF0000'); // color
$objBorderA5->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objBorderA5->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objBorderA5->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
//设置填充颜色
$objFillA5 = $objStyleA5->getFill();
$objFillA5->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objFillA5->getStartColor()->setARGB('FFEEEEEE');
//从指定的单元格复制样式信息.
$objActSheet->duplicateStyle($objStyleA5, 'B1:C22');
//*************************************
//添加图片
$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName('ZealImg');
$objDrawing->setDescription('Image inserted by Zeal');
$objDrawing->setPath('./zeali.net.logo.gif');
$objDrawing->setHeight(36);
$objDrawing->setCoordinates('C23');
$objDrawing->setOffsetX(10);
$objDrawing->setRotation(15);
$objDrawing->getShadow()->setVisible(true);
$objDrawing->getShadow()->setDirection(36);
$objDrawing->setWorksheet($objActSheet);
//添加一个新的worksheet
$objExcel->createSheet();
$objExcel->getSheet(1)->setTitle('测试2');
//保护单元格
$objExcel->getSheet(1)->getProtection()->setSheet(true);
$objExcel->getSheet(1)->protectCells('A1:C22', 'PHPExcel');
//*************************************
//输出内容
//
$outputFileName = "output.xls";
//到文件
$objWriter->save($outputFileName);
//or
//到浏览器
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header('Content-Disposition:inline;filename="'.$outputFileName.'"');
header("Content-Transfer-Encoding: binary");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
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");
$objWriter->save('php://output');
?>
PS.PHP果然是个好东西~~什么包都有~~
文章来源:
http://www.5kai.com/post/359/
http://blog.chinaunix.net/u/13284/showart_1071984.html
另:header的用法:http://zhidao.baidu.com/question/8681288.html?si=2
header中各文件类型的表示方法:http://hi.baidu.com/phpyao/blog/item/d4ab4ab11e27ca52092302d4.html
PHP导出EXCEL的不完全总结:http://hi.baidu.com/jricode/blog/item/165a66245cfd023b8744f9bb.html
php phpexcel用法,PHPExcel用法总结相关推荐
- php单元格字体颜色,PHPExcel API接口用法大全,按模板导入excel,美化excel,导出图片,设置单元格字体颜色背景色边框,合并单元格,设置行高列宽...
PHPExcel API接口用法大全,按模板导入excel,美化excel,导出图片,设置单元格字体颜色背景色边框,合并单元格,设置行高列宽 2020-08-31 85 一:读取excel表模板$ph ...
- 【Java 泛型】泛型用法 ( 泛型类用法 | 泛型方法用法 | 泛型通配符 ? | 泛型安全检查 )
文章目录 一.泛型类用法 二.泛型方法用法 三.泛型通配符 <?> 四.泛型安全检查 五.完整代码示例 1.泛型类 / 方法 2.main 函数 一.泛型类用法 泛型类用法 : 使用时先声 ...
- php7能用phpexcel吗,PHPExcel 在 PHP7.0 以上版本报错
低版本 PHPExcel中 在PHP7.0以下时运行不会报错,当切换PHP版本为PHP7.0以上时将会报错 'break' not in the 'loop' or 'switch' context ...
- php phpexcel用法,PHPExcel用法
导入PHPExcel.php或者其他文件 require_once 'PHPExcel.php'; require_once'PHPExcel/Writer/Excel5.php'; // 用 ...
- php phpexcel用法,PHPExcel中文帮助手册|PHPExcel使用方法(分享)
include 'PHPExcel.php'; include 'PHPExcel/Writer/Excel2007.php'; //或者include 'PHPExcel/Writer/Excel5 ...
- linux线程join的用法,join用法
Join用法 - a 1显示第一个文件的不匹配行,- a 2为从第二个文件中显示不匹配行. n.m n为文件号,m为域号.1 . 3表示只显示文件1第三域,每个n,m必须用逗号分隔,如1 . 3 ...
- try catch用法_synchronized用法总结
synchronized :java内置关键字,被保存在对象头中,而一个对象则是由对象头.实例数据.对其填充三部分组成. 很多时候大家伙都惯性地将synchronized称为一个重量级锁,理由是syn ...
- mysql shell eof_shell脚本 exit命令 EOF用法 数组用法
一.exit命令(shell脚本出错不停止,除非显示exit) 格式:exit n 退出,设置退出码为n.(Cause the shell to exit with a status of n.) 格 ...
- php中sisson用法,session用法
在开发PHP的时候,我们经常会使用到Session,用于记录用户的一些访问信息,方便我们根据用户的喜好,接下来吾爱编程为大家介绍一下session用法,有需要的小伙伴可以参考一下: 1.简介: Ses ...
最新文章
- HDU 3632 A Captivating Match
- arp_ignore和arp_announce内核参数
- Android HandlerThread 源码分析
- 查找、移除某个视图上的某类控件
- 【C语言简单说】三:整数变量和输出扩展(2)
- vector 查找结构体对象_面试大厂回来,我狠补了一把算法和数据结构
- AI赋能红外测温助力精准防控疫情……
- 阿里巴巴开源项目:分布式数据库同步系统otter(解决中美异地机房)
- 一款简约图库开源代码
- 实验2-2-8 阶梯电价 (15 分)
- eclipse svn回滚之前版本
- AltiumDesigner2020导入3D Body-SOLIDWORKS三维模型
- 三天学会MySQL - MySQL数据库章节练习
- 浅谈快速开发平台:突破系统开发边界,赋能企业数字化!
- win10打开网路邻居计算机,win10系统下网上邻居不能访问其他电脑的解决方法
- springboot 集成MinIo 文件服务器
- 扫盲篇之蓝牙Mesh是什么
- NYOJ995 硬币找零(完全背包)
- 微信小程序购物商城定制开发
- 2022年第十三届蓝桥杯大赛软件类决赛C/C++大学B组E题出差