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'); PHPExcel基本操作:
定义EXCEL实体
即定义一个PHPEXCEL对象,并设置EXCEL对象内显示内容
// Excel开始
// 准备EXCEL的包括文件
// Error reporting
error_reporting(0);
// PHPExcel
require_once dirname(__FILE__) . 'PHPExcel.php';
// 生成新的excel对象
$objPHPExcel = new PHPExcel();
// 设置excel文档的属性
$objPHPExcel->getProperties()->setCreator("Sam.c")
->setLastModifiedBy("Sam.c Test")
->setTitle("Microsoft Office Excel Document")
->setSubject("Test")
->setDescription("Test")
->setKeywords("Test")
->setCategory("Test result file");
// 开始操作excel表
// 操作第一个工作表
$objPHPExcel->setActiveSheetIndex(0);
// 设置工作薄名称
$objPHPExcel->getActiveSheet()->setTitle(iconv('gbk', 'utf-8', 'phpexcel测试'));
// 设置默认字体和大小
$objPHPExcel->getDefaultStyle()->getFont()->setName(iconv('gbk', 'utf-8', '宋体'));
$objPHPExcel->getDefaultStyle()->getFont()->setSize(10);
输出文件
// 如果需要输出EXCEL格式
if($m_exportType=="excel"){
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
// 从浏览器直接输出$filename
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-excel;");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");
header("Content-Disposition:attachment;filename=".$filename);
header("Content-Transfer-Encoding:binary");
$objWriter->save("php://output");
}
// 如果需要输出PDF格式
if($m_exportType=="pdf"){
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
$objWriter->setSheetIndex(0);
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/pdf");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");
header("Content-Disposition:attachment;filename=".$m_strOutputPdfFileName);
header("Content-Transfer-Encoding:binary");
$objWriter->save("php://output");
}
设置一列的宽度:
1
|
$objPHPExcel ->getActiveSheet()->getColumnDimension( 'A' )->setWidth(15); |
设置一行的高度:
1
|
$objPHPExcel ->getActiveSheet()->getRowDimension( '6' )->setRowHeight(30); |
合并单元格:
1
|
$objPHPExcel ->getActiveSheet()->mergeCells( 'A1:P1' ); |
设置A1单元格加粗,居中:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
$styleArray1 = array ( 'font' => array ( 'bold' => true, 'size' =>12, 'color' => array ( 'argb' => '00000000' , ), ), 'alignment' => array ( 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER, ), ); // 将A1单元格设置为加粗,居中 $objPHPExcel ->getActiveSheet()->getStyle( 'A1' )->applyFromArray( $styleArray1 ); $objPHPExcel ->getActiveSheet()->getStyle( 'B1' )->getFont()->setBold(true); |
给特定单元格中写入内容:
1
|
$objPHPExcel ->getActiveSheet()->setCellValue( 'A1' , 'Hello Baby' ); |
设置单元格样式(水平/垂直居中):
1
2
|
$objPHPExcel ->getActiveSheet()->getStyle( 'A1' )->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel ->getActiveSheet()->getStyle( 'A1' )->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); |
设置单元格样式(黑色字体):
1
|
$objPHPExcel ->getActiveSheet()->getStyle( 'H5' )->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_BLACK); // 黑色 |
设置单元格格式(背景):
1
|
$objPHPExcel ->getActiveSheet()->getStyle( 'H5' )->getFill()->getStartColor()->setARGB( '00ff99cc' ); // 将背景设置为浅粉色 |
设置单元格格式(数字格式):
1
|
$objPHPExcel ->getActiveSheet()->getStyle( 'F' . $iLineNumber )->getNumberFormat()->setFormatCode( '0.000' ); |
给单元格中放入图片:
1
2
3
4
5
6
7
8
9
|
// 将数据中心图片放在J1单元格内 $objDrawing = new PHPExcel_Worksheet_Drawing(); $objDrawing ->setName( 'Logo' ); $objDrawing ->setDescription( 'Logo' ); $objDrawing ->setPath( 'test.jpg' ); $objDrawing ->setWidth(400); $objDrawing ->setHeight(123); $objDrawing ->setCoordinates( 'J1' ); $objDrawing ->setWorksheet( $objPHPExcel ->getActiveSheet()); |
在单元格中设置超链接:
1
2
|
$objPHPExcel ->getActiveSheet()->setCellValue( 'H8' , iconv( 'gbk' , 'utf-8' , '燕南天' )); |
设置单元格边框
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$styleThinBlackBorderOutline = array ( 'borders' => array ( 'outline' => array ( 'style' => PHPExcel_Style_Border::BORDER_THIN, //设置border样式 //'style' => PHPExcel_Style_Border::BORDER_THICK, 另一种样式 'color' => array ( 'argb' => 'FF000000' ), //设置border颜色 ), ), ); $objPHPExcel ->getActiveSheet()->getStyle( 'A4:E10' )->applyFromArray( $styleThinBlackBorderOutline ); //添加一个新的worksheet $objExcel ->createSheet(); $objActSheet = $objExcel ->getSheet( $s ); $objActSheet ->setTitle( '表' . $GSheet ); |
PHPExcel类的使用讲解的更多相关文章
- 用PHPExcel类读取excel文件的内容
这里对PHPExcel类不做介绍,有兴趣的朋友可以自己查阅资料 在classes文件夹下有个PHPExcel.php文件,这个文件是这个类库的主要入口文件,在用之前,要引入这个类 其他的类,在此类中会 ...
- Python 类的特性讲解
类的特性讲解 类的特性 #定义一个类, class是定义类的语法,Role是类名, (object)是新式类的写法,必须这样 写,以后再讲为什么 class Role(object): #初始化函数, ...
- ThinkPHP5调用PHPExcel类实现导入导出
注意:extend是放置第三方类的地方,不要乱配置命名空间那些,引起不必要的类错误 代码如下 <?php namespace app\index\controller; use think\Co ...
- TP3.2加载外部PHPexcel类,实现导入和导出
TP3.2加载外部PHPexcel类,实现导入和导出 导入: 1.将下载好的PHPexcel文件放到libray/Org/Uti/文件夹下,将PHPEXCEL.PHP改为PHPEXCEL.class. ...
- php利用PHPExcel类导出导入Excel用法
PHPExcel类是php一个excel表格处理插件了,下面我来给大家介绍利用PHPExcel类来导入与导出excel表格的应用方法,有需要了解的朋友不防参考参考(PHPExcel自己百度下载这里不介 ...
- ThinkPHP3.2.3使用PHPExcel类操作excel导出excel
如何导入excel请看:ThinkPHP3.2.3使用PHPExcel类操作excel导入读取excel // 引入PHPExcel类 import("Org.Util.PHPExccel& ...
- thinkphp引入PHPExcel类---thinkPHP类库扩展-----引入没有采用命名空间的类库
最近项目中遇到引入PHPExcel第三方类库 但是下载的phpExcel类没有命名空间,而且所有接口文件的命名都是以.php结尾 而不是tp中的.class.php 解决办法很简单:在引入没有采用命 ...
- PHPExcel 类
//引入工具类 require_once 'PHPExcel.php'; //HandleExcel.class.php 文件 class HandleExcel extends PHPExcel{ ...
- 关于PHPExcel类占用内存问题
最近在帮一家公司做后台excel导出功能,使用的工具类是phpexcel,因为这个类功能比较强大.全面. 但是遇到下面一个问题: 当导出数据量达到一定数量级的时候,比如说1000条,服务器出现卡顿.白 ...
随机推荐
- mysql select 格式化输出
select * from test\G; MySQL的客户端命令行工具,有很多方便使用者的特性,某些方面甚至可以说比Oracle的sqlplus更加人性化.当然从整体来说,还是sqlplus更加方便 ...
- EasyUI-Datagrid 中formatter和group-formatter的使用
1.在表格属性设置函数那块写以下内容: groupFormatter:function(value,rows){ //这里可以看到每一条导入表格中的数据,可以返回group的总结值 }, column ...
- Linux下的网络环境配置
- Django笔记-登陆注册-1
1.项目结构(eclipse+PyDev工具)(粘上来后代码缩进格式没有了,就先不整了) 2.关键代码: test_log03.settings.py INSTALLED_APPS = ( 'djan ...
- osharp3 操作日志之数据日志 控制增强
osharp3 原来的数据日志,有配置文件中有这总开关,DataLoggingEnabled,原来的程序是,这个总开关关了,就无法记录数据日志了,,如果开了,,他不管记录不记录数据日志,系统都会存数据 ...
- Autofac.Integration.Owin
public static IAppBuilder UseAutofacMiddleware(this IAppBuilder app, ILifetimeScope container) { if ...
- Session共享的解决方案
http://www.cnblogs.com/xinhaijulan/archive/2010/08/21/1805116.html Session共享的解决方案 1.客户端SessionID值唯一: ...
- [Unity] 查找资源
有时候需要通过代码来为对象指定一个资源.可以通过下面的函数来查找资源. /// <summary> /// 查找资源 /// </summary> /// <return ...
- 分布式消息队列RocketMQ部署
一.RocketMQ简介: RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: 1.支持严格的消息顺序: 2.支持Topic与Queue两种模式: 3.亿级消息堆积能力: 4.比较友好 ...
- 工具,百度编辑器 UEditor 使用实例化
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...