PHPExcel的使用

引用PHPExcel

include ‘PHPExcel.php‘;
include ‘PHPExcel/Writer/Excel2007.php‘;
//或者include ‘PHPExcel/Writer/Excel5.php‘; 用于输出.xls的$objPHPExcel = new PHPExcel(); //创建一个实例

设置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");

也可用下面这种方式

$objPHPExcel->getProperties()->setCreator("ctos")
            ->setLastModifiedBy("ctos")
            ->setTitle("Office 2007 XLSX Test Document")
            ->setSubject("Office 2007 XLSX Test Document")
            ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
            ->setKeywords("office 2007 openxml php")
            ->setCategory("Test result file"); 

设置当前的sheet

$objPHPExcel->setActiveSheetIndex(0);

设置sheet的标题

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

设置单元格宽度

$objPHPExcel->getActiveSheet()->getColumnDimension(‘A‘)->setWidth(20);

设置单元格高度

$objPHPExcel->getActiveSheet()->getRowDimension($i)->setRowHeight(40);

合并单元格

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

拆分单元格

$objPHPExcel->getActiveSheet()->unmergeCells(‘A28:B28‘);

设置保护cell,保护工作表

$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true);
$objPHPExcel->getActiveSheet()->protectCells(‘A3:E13‘, ‘PHPExcel‘);

设置格式

$objPHPExcel->getActiveSheet()->getStyle(‘E4‘)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);
$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle(‘E4‘), ‘E5:E13‘ );

设置加粗

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

设置水平对齐方式(HORIZONTAL_RIGHT,HORIZONTAL_LEFT,HORIZONTAL_CENTER,HORIZONTAL_JUSTIFY)

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

设置垂直居中

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

设置字号

$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);

设置边框

$objPHPExcel->getActiveSheet()->getStyle(‘A1:I20‘)->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN); 

设置边框颜色

$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‘);

插入图像

$objDrawing = new PHPExcel_Worksheet_Drawing();
/*设置图片路径 切记:只能是本地图片*/
$objDrawing->setPath(‘图像地址‘);
/*设置图片高度*/
$objDrawing->setHeight(180);//照片高度
$objDrawing->setWidth(150); //照片宽度
/*设置图片要插入的单元格*/
$objDrawing->setCoordinates(‘E2‘);
 /*设置图片所在单元格的格式*/
$objDrawing->setOffsetX(5);
$objDrawing->setRotation(5);
$objDrawing->getShadow()->setVisible(true);
$objDrawing->getShadow()->setDirection(50);
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());

设置单元格背景色

$objPHPExcel->getActiveSheet(0)->getStyle(‘A1‘)->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel->getActiveSheet(0)->getStyle(‘A1‘)->getFill()->getStartColor()->setARGB(‘FFCAE8EA‘);

最后输入浏览器,导出Excel

$savename=‘导出Excel示例‘;
$ua = $_SERVER["HTTP_USER_AGENT"];
$datetime = date(‘Y-m-d‘, time());
if (preg_match("/MSIE/", $ua)) {
    $savename = urlencode($savename); //处理IE导出名称乱码
} 

// excel头参数
header(‘Content-Type: application/vnd.ms-excel‘);
header(‘Content-Disposition: attachment;filename="‘.$savename.‘.xls"‘);  //日期为文件名后缀
header(‘Cache-Control: max-age=0‘);
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, ‘Excel5‘);  //excel5为xls格式,excel2007为xlsx格式
$objWriter->save(‘php://output‘);

时间: 2024-08-01 15:01:37

PHPExcel的使用的相关文章

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); //或者$o

PHP 操作 Excel PHPExcel 详解 --转

header header("Content-Type:application/vnd.ms-excel"); header("Content-Disposition:attachment;filename=sample.xls"); header("Pragma:no-cache"); header("Expires:0"); 2.PHPExcel http://www.codeplex.com/PHPExcelhttp:/

PHPexcel导出数据

百度PHPexcel 进入后 选择branches  进入选择版本 拷贝classes文件 改名为PHPexcel 下面是我用thinkphp3.2.3写的一个简单导出 public function PHPexcel(){ $path=str_replace('\\','/',__FILE__);//替\为/ $arr=explode('/',$path); $str = $arr[0].'/'.$arr[1].'/'.$arr[2].'/'.$arr[3].'/';//拼装文件路径 $a =

PHPExcel SUM 返回0

使用PHPExcel 导出Excel最后的代码是: $objWriter = PHPExcel_IOFactory::createWriter($this->excel, 'Excel2007'); //force user to download the Excel file without writing it to server's HD $objWriter->save('php://output'); 导出的Excel的"=SUM(A1:A10)"的和还是0,解决

phpExcel与jq的ajax

有时我们的需求总会出现一些自己觉得很奇怪的需求, 但如果效果出来了,又觉得很新颖,然后这些新颖的 东西,就是这些奇怪的需求而来的,所以别对自己不能 的事情觉得不应该有,而是挑战它,用自己所懂得语言 完成它. xls格式的文件在页面展示就是一个感觉就是前端无法实现的活,但 却可以实现,只是它需要后台帮忙转换,应该数据流在前端无法被转换 成我们所需的数据结构. php: <?php error_reporting(E_ALL); ini_set('display_errors', TRUE); in

通过phpexcel获取时间并转换为正常格式

excel内容如下: phpExcel获取到的时间格式如下: 时间格式为,月份-日期-年分 思路是将它转为时间戳,然后就好处理了 php日期函数 int gmmktime([hour],[minute],[second],[month],[day],[year]) 简单来说,返回指定的时间戳 //$data为从excel中获取到的数组 for ($i =0; $i<count($data);$i++){     echo '<br>';     $gettime= explode('-'

Thinkphp 用PHPExcel 导入Excel

搞了个简单的Excel导入, 用的是PHPExcel(百科:用来操作Office Excel文档的一个PHP类库, 基于微软的OpenXML标准和PHP语言) 好, 不说了, 开始吧... 首先得有PHPExcel类库, 点这里下载 https://github.com/Zmwherein/PHPExcel.git 然后把它放在 \ThinkPHP\Library\Vendor(个人喜好, 能引入就行了) 如图: PHPExcel.php 类似一个入口文件. 可以进去看看里面写的方法是怎个跑法.

PHPExcel中文开发手册翻译版(2)

PHPExcel开发者文档 1.目录2. 4先决条件2.1.软件要求42.2.安装说明42.3.入门42.4.有用的链接和工具42.4.1.的OpenXML / SpreadsheetML中42.4.2.常见问题52.4.3. 6教程3.建筑73.1. 7示意性3.2.延迟加载器73.3.电子表格在内存中73.4.读者和作家73.5.流利的接口84.创建电子表格104.1.该PHPExcel 10级4.1.1.从文件加载10工作簿4.1.2.创建一个新的工作簿104.2.配置设置104.2.1.

2016/06/13 phpexcel 未完待续

①准备工作: 1,php版本不能太低 2,去官网下载PHPExcel插件    http://phpexcel.codeplex.com/ 3,解压后提取classes文件夹到工作目录,并重命名为PHPExcel 4,配置虚拟域名   不用写一大堆路径 wamp环境  配置顺序: 找到apache下的httpd.conf 文件 开启apache的mod_rewrite功能模块     搜索httpd.conf文件下的mod_rewrite模块 去掉前面的# 引入http-vhosts.conf文

PHPExcel 导出表格 不知道好不好用

PHPExcel类是php一个excel表格处理插件了,下面我来给大家介绍利用PHPExcel类来导入与导出excel表格的应用方法,有需要了解的朋友不防参考参考(PHPExcel自己百度下载这里不介绍了). 导出Excel用法 //设置环境变量(新增PHPExcel) set_include_path('.'. PATH_SEPARATOR . Yii::app()->basePath.'/lib/PHPExcel' . PATH_SEPARATOR . get_include_path())