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用法总结相关推荐

  1. php单元格字体颜色,PHPExcel API接口用法大全,按模板导入excel,美化excel,导出图片,设置单元格字体颜色背景色边框,合并单元格,设置行高列宽...

    PHPExcel API接口用法大全,按模板导入excel,美化excel,导出图片,设置单元格字体颜色背景色边框,合并单元格,设置行高列宽 2020-08-31 85 一:读取excel表模板$ph ...

  2. 【Java 泛型】泛型用法 ( 泛型类用法 | 泛型方法用法 | 泛型通配符 ? | 泛型安全检查 )

    文章目录 一.泛型类用法 二.泛型方法用法 三.泛型通配符 <?> 四.泛型安全检查 五.完整代码示例 1.泛型类 / 方法 2.main 函数 一.泛型类用法 泛型类用法 : 使用时先声 ...

  3. php7能用phpexcel吗,PHPExcel 在 PHP7.0 以上版本报错

    低版本 PHPExcel中 在PHP7.0以下时运行不会报错,当切换PHP版本为PHP7.0以上时将会报错 'break' not in the 'loop' or 'switch' context ...

  4. php phpexcel用法,PHPExcel用法

    导入PHPExcel.php或者其他文件 require_once 'PHPExcel.php'; require_once'PHPExcel/Writer/Excel5.php';     // 用 ...

  5. php phpexcel用法,PHPExcel中文帮助手册|PHPExcel使用方法(分享)

    include 'PHPExcel.php'; include 'PHPExcel/Writer/Excel2007.php'; //或者include 'PHPExcel/Writer/Excel5 ...

  6. linux线程join的用法,join用法

    Join用法 - a 1显示第一个文件的不匹配行,- a 2为从第二个文件中显示不匹配行. n.m    n为文件号,m为域号.1 . 3表示只显示文件1第三域,每个n,m必须用逗号分隔,如1 . 3 ...

  7. try catch用法_synchronized用法总结

    synchronized :java内置关键字,被保存在对象头中,而一个对象则是由对象头.实例数据.对其填充三部分组成. 很多时候大家伙都惯性地将synchronized称为一个重量级锁,理由是syn ...

  8. mysql shell eof_shell脚本 exit命令 EOF用法 数组用法

    一.exit命令(shell脚本出错不停止,除非显示exit) 格式:exit n 退出,设置退出码为n.(Cause the shell to exit with a status of n.) 格 ...

  9. php中sisson用法,session用法

    在开发PHP的时候,我们经常会使用到Session,用于记录用户的一些访问信息,方便我们根据用户的喜好,接下来吾爱编程为大家介绍一下session用法,有需要的小伙伴可以参考一下: 1.简介: Ses ...

最新文章

  1. HDU 3632 A Captivating Match
  2. arp_ignore和arp_announce内核参数
  3. Android HandlerThread 源码分析
  4. 查找、移除某个视图上的某类控件
  5. 【C语言简单说】三:整数变量和输出扩展(2)
  6. vector 查找结构体对象_面试大厂回来,我狠补了一把算法和数据结构
  7. AI赋能红外测温助力精准防控疫情……
  8. 阿里巴巴开源项目:分布式数据库同步系统otter(解决中美异地机房)
  9. 一款简约图库开源代码
  10. 实验2-2-8 阶梯电价 (15 分)
  11. eclipse svn回滚之前版本
  12. AltiumDesigner2020导入3D Body-SOLIDWORKS三维模型
  13. 三天学会MySQL - MySQL数据库章节练习
  14. 浅谈快速开发平台:突破系统开发边界,赋能企业数字化!
  15. win10打开网路邻居计算机,win10系统下网上邻居不能访问其他电脑的解决方法
  16. springboot 集成MinIo 文件服务器
  17. 扫盲篇之蓝牙Mesh是什么
  18. NYOJ995 硬币找零(完全背包)
  19. 微信小程序购物商城定制开发
  20. 2022年第十三届蓝桥杯大赛软件类决赛C/C++大学B组E题出差

热门文章

  1. AI又破案!衢州城市大脑这回抓了一个抢劫犯
  2. MaxCompute - ODPS重装上阵 第四弹 - CTE,VALUES,SEMIJOIN
  3. 想学 Python?那这套教程再适合你不过了!!
  4. CPU:别再拿我当搬砖工!
  5. 反转!物联网火爆,开发者却很难入门?
  6. 阿里云PolarDB重大更新:两大技术突破,传统数据库一键迁移上云
  7. 什么是5G,我们能从中得到什么?
  8. Cloud一分钟 | 加码云计算!IBM斥340亿美元收购Red Hat
  9. 企业大咖教你解决Kubernetes的挑战
  10. Java实现首字母大写、驼峰命名与、划线转换,校验null