PHPExcel使用方法

<?php
require_once 'PHPExcel/1.8.0/PHPExcel.php';
require_once 'PHPExcel/1.8.0/PHPExcel/Writer/Excel2007.php';

$objPHPExcel = new PHPExcel();															// 创建新的PHPExcel对象

// 设置excel的属性
$objPHPExcel->getProperties()->setCreator("10967198@qq.com");							// 创建人
$objPHPExcel->getProperties()->setLastModifiedBy("Carlos Jiang");						// 最后修改人
$objPHPExcel->getProperties()->setTitle("PHPExcel");									// 标题
$objPHPExcel->getProperties()->setSubject("PHPExcel");									// 主题
$objPHPExcel->getProperties()->setDescription("PHPExcel");								// 描述
$objPHPExcel->getProperties()->setKeywords("Excel");									// 关键字
$objPHPExcel->getProperties()->setCategory("PHPExcel");									// 种类

// sheet工作表操作
$objPHPExcel->setActiveSheetIndex(0);													//设置当前的sheet
$objPHPExcel->getActiveSheet()->settitle('Simple');										//设置sheet的name

// 复制单元格
$objPHPExcel->getActiveSheet()->duplicateStyle($objPHPExcel->getActiveSheet()->getStyle('E4'), 'E5:E13' ); 										//复制单元格

// 设置行列和单元格的宽高
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(20);				// 所有单元格(行)默认高度
$objPHPExcel->getActiveSheet()->getDefaultColumnDimension()->setWidth(20);				// 所有单元格(列)默认宽度
$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(30);					// 设置行高度
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(30);					// 设置列宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);				// 宽度自适应

// 设置单元格的值
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String');
$objPHPExcel->getActiveSheet()->setCellValue('A2', 12);
$objPHPExcel->getActiveSheet()->setCellValue('A3', true);
$objPHPExcel->getActiveSheet()->setCellValue('C5', '=SUM(A2:C3)');

// 单元格合并分离操作
$objPHPExcel->getActiveSheet()->mergeCells('A18:E22');									// 合并单元格
$objPHPExcel->getActiveSheet()->mergeCells('A28:B28');									// 合并单元格
$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28');								// 分离单元格

//============================================================================== 设 置 单 元 格 格 式 ==============================================================================
// 数字
$objPHPExcel->getActiveSheet()->getStyle('E4')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_GENERAL);					//设置分类
$objPHPExcel->getActiveSheet()->setCellValueExplicit("E1","php",PHPExcel_Cell_DataType::TYPE_STRING);											//设置单元格分类

// 对齐
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setWrapText(True);																//自动换行
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setShrinkToFit(True);															//收缩以适应
$objPHPExcel->getActiveSheet()->getStyle('D11')->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);						//垂直居中

// 字体
$objPHPExcel->getActiveSheet()->getStyle("A1")->getFont()->setName("Arial");																	//字体
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20);																			//字号
$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('D13')->getFont()->setBold(true);																		//字形

// 边框
$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()			->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('B4')->getBorders()->getLeft()			->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('C4')->getBorders()->getRight()		->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getBottom()		->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getAllBorders()	->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('D1')->getBorders()->getLeft()			->getColor()->setARGB('FF993300');								//设置边框的color

// 填充
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FF808080');

// 保护
$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); 																				//保护sheet
// $objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel');																			//保护cell
//============================================================================== 设 置 单 元 格 格 式 ==============================================================================

// 在默认sheet后,创建一个worksheet
$objPHPExcel->createSheet();															// 创建新的一个worksheet
$objPHPExcel->setActiveSheetIndex(1);													// 设置当前的worksheet
$objPHPExcel->getActiveSheet()->settitle('Simple');										// 设置当前worksheet的名称
$objPHPExcel->setActiveSheetIndex(0);													// 返回第一个worksheet

$file_name="PHPExcel";
ob_end_clean();	
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$file_name.'.xlsx"');
header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');
// If you're serving to IE over SSL, then the following may be needed
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');										// Date in the past
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');							// always modified
header('Cache-Control: cache, must-revalidate');										// HTTP/1.1
header('Pragma: public');																// HTTP/1.0

$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);								// 保存excel—2007格式
$objWriter->save('php://output');														// 通过浏览器来下载excel文件
die;
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值