//引入PHPExcel
vendor('PHPExcel.PHPExcel'); // Create new PHPExcel object
$objPHPExcel = new PHPExcel(); //设置文档属性
$objPHPExcel->getProperties()
->setCreator("web100.cc")
->setLastModifiedBy("web100.cc")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document generated using PHP classes.")
->setKeywords("office 2007 openxml php")
->setCategory("Test result file"); //设置当前活动的sheet
$objPHPExcel->setActiveSheetIndex(0); //选定当前Sheet
$objActSheet = $objPHPExcel->11getActiveSheet(); //设置sheet名字
$objActSheet->setTitle('phpexcel demo'); //由PHPExcel根据传入内容自动判断单元格内容类型
$objActSheet->setCellValue('A1', "Firstname");
$objActSheet->setCellValue('B1', "Lastname");
$objActSheet->setCellValue('C1', "Phone");
$objActSheet->setCellValue('D1', "Fax");
$objActSheet->setCellValue('E1', "Address");
$objActSheet->setCellValue('F1', "ZIP");
$objActSheet->setCellValue('G1', "DATE"); //直接按坐标位置设置值
$objActSheet->setCellValueByColumnAndRow(0, 8, 'firstname');
$objActSheet->setCellValueByColumnAndRow(1, 8, 'lastname'); // 单元格填充值
$objActSheet->setCellValue('A2', "小风");
$objActSheet->setCellValue('B2', "wang"); //设置列宽
$objActSheet->getColumnDimension('C')->setWidth('20'); // 设置行高
$objActSheet->getRowDimension('9')->setRowHeight(20); //第9行,如果setRowHeight(-1),表示自适应 //设置默认行高
$objActSheet->getDefaultRowDimension()->setRowHeight(15); // 设置自动换行
$objActSheet->getStyle('A4')->getAlignment()->setWrapText(true); // 设置字体
$objActSheet->getStyle('A1')->getFont()->setName('宋体');
// 字号
$objActSheet->getStyle('A1')->getFont()->setSize(12);
// 加粗
$objActSheet->getStyle('A1')->getFont()->setBold(true); //说明:$objActSheet->getStyle('A1:G10'),可以通过这种方式来选择一片单元格! // 设置单元格格式
$objActSheet->getCell('C2')->setValueExplicit('861391327543258', PHPExcel_Cell_DataType::TYPE_NUMERIC); // 日期
$objActSheet->setCellValue('G2', '2008-12-31');
$objActSheet->getStyle('G2')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); // 时间戳
$time = gmmktime(0,0,0,12,31,2008); // int(1230681600)
$objActSheet->setCellValue('G3', PHPExcel_Shared_Date::PHPToExcel($time));
$objActSheet->getStyle('G3')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); // url
$objActSheet->setCellValue('G11', 'www.spalybow.com');
$objActSheet->getCell('G11')->getHyperlink()->setUrl('http://www.spalybow.com'); // 另一个sheet
$objActSheet->setCellValue('G12', 'sheetb');
$objActSheet->getCell('G12')->getHyperlink()->setUrl("sheet://'sheetb'!A1"); // 水平居上
$objActSheet->getStyle('A9:B9')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP); // 单元格换行
$objActSheet->getStyle('G2:G3')->getAlignment()->setWrapText(true); // 合并
$objActSheet->mergeCells('A18:E22'); // 隐藏D列
$objActSheet->getColumnDimension('D')->setVisible(false); //
$objActSheet->getColumnDimension('E')->setOutlineLevel(1);
$objActSheet->getColumnDimension('E')->setVisible(false);
$objActSheet->getColumnDimension('F')->setOutlineLevel(1);
$objActSheet->getColumnDimension('F')->setVisible(false);
$objActSheet->getColumnDimension('F')->setCollapsed(true); // 固定第一行
$objActSheet->freezePane('A2'); // 保护工作表
$objActSheet->getProtection()->setPassword('PHPExcel');
$objActSheet->getProtection()->setSheet(true);
$objActSheet->getProtection()->setSort(true);
$objActSheet->getProtection()->setInsertRows(true);
$objActSheet->getProtection()->setFormatCells(true); //设置边框
$sharedStyle1 = new PHPExcel_Style();
$sharedStyle1->applyFromArray(
array('borders' => array(
'left' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM)
)
));
$objActSheet->setSharedStyle($sharedStyle1, "B1:B10"); // 创建一个新的工作表
$objWorksheet1 = $objPHPExcel->createSheet();
$objWorksheet1->setTitle('sheetb'); $objPHPExcel->setActiveSheetIndex(1); // 创建一个图片
$gdImage = @imagecreatetruecolor(200, 20) or die('Cannot Initialize new GD image stream');
$textColor = imagecolorallocate($gdImage, 255, 255, 255);
imagestring($gdImage, 1, 5, 5, 'Created with PHPExcel (c1gstudio.com)', $textColor); // 把创建的图片添加到工作表
$objDrawing = new PHPExcel_Worksheet_MemoryDrawing();
$objDrawing->setName('Sample image');
$objDrawing->setDescription('Sample image');
$objDrawing->setImageResource($gdImage);
$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG);
$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT);
$objDrawing->setHeight(36);
$objDrawing->setWorksheet($objActSheet); $objPHPExcel->setActiveSheetIndex(0); // 保存
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('testexcel'.time().'.xls');

来源:http://www.splaybow.com/post/thinkphp-phpexcel-121.html

最新文章

  1. Xcode7 Cocoapods 安装或更新出现错误
  2. [ActionScript 3.0] 将组件 SWC 文件导入 Flash
  3. 理解Java中字符流与字节流的区别
  4. MVC4中的Display Mode简介
  5. django学习日志之自定义用户扩展
  6. 深入理解JavaScript闭包
  7. HDU 1671 Phone List (Trie·数组实现)
  8. Java 日期 Api
  9. Android开发之parseSdkContent failed Could not initialize class android.graphics.Typeface
  10. makefile的简单写法
  11. 怎么理解js的面向对象编程
  12. javascript数据类型之Array类型
  13. 你应该知道的 5 个 Docker 工具
  14. 使用GDB调试将符号表与程序分离后的可执行文件
  15. 十三、u-boot 调试-- NOR FLASH 支持
  16. ADB server didn't ACK failed to start daemon 5037
  17. WCF- 契约Contract(ServiceContract、OperationContract、DataContract、ServiceKnownType和DataMember)(转)
  18. 一步步Cobol 400上手自学入门教程05 - 表
  19. c++ 中的符号与关键字
  20. Hadoop生态圈-桶表和分区表

热门文章

  1. Java:多线程,线程池,ThreadPoolExecutor详解
  2. 在ASP.NET MVC5中使用特性路由
  3. thinkphp 表单一些
  4. 【Android】3.12 兴趣点( POI)搜索功能
  5. mysqldump 导出数据库为DBname的表名为Tname的表结构 导出数据库的所有表的表结构
  6. Linux系统cp: omitting directory `XXX'问题解决
  7. Java experts blog
  8. Spark: Best practice for retrieving big data from RDD to local machine
  9. 一款html5和css3实现的小机器人走路动画
  10. 【Unity】物体跟随鼠标移动