thinkphp excel表格导出
来源:互联网 发布:干部测评软件 编辑:程序博客网 时间:2024/05/16 08:05
Thinkphp里实现excel表格导出数据,需要在网上下载PHPExcel类包,放在Vendor文件夹下面
地址:http://phpexcel.codeplex.com/releases/view/119187
具体实现功能如下:
这样就完成了导出,当然了还有一些其他的设置,如下:
上面只是完成了流程而已。但是不可能这样简单而已。我们可以设置很多东西。看自己需要来设置了。
1. 设置excel的属性:
2. 创建人
3. $objPHPExcel->getProperties()->setCreator("Maarten Balliauw");
4. 最后修改人
5. $objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");
6. 标题
7. $objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
8. 题目
9. $objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
10.描述
11.$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
12.关键字
13.$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");
14.种类
15.$objPHPExcel->getProperties()->setCategory("Test result file");
复制代码
1. 设置当前的sheet
2. $objPHPExcel->setActiveSheetIndex(0);
3. 设置sheet的name
4. $objPHPExcel->getActiveSheet()->setTitle('Simple');
5. 设置单元格的值
6. $objPHPExcel->getActiveSheet()->setCellValue('A1', 'String');
7. $objPHPExcel->getActiveSheet()->setCellValue('A2', 12);
8. $objPHPExcel->getActiveSheet()->setCellValue('A3', true);
9. $objPHPExcel->getActiveSheet()->setCellValue('C5', '=SUM(C2:C4)');
10.$objPHPExcel->getActiveSheet()->setCellValue('B8', '=MIN(B2:C5)');
11.合并单元格
12.$objPHPExcel->getActiveSheet()->mergeCells('A18:E22');
13.分离单元格
14.$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28');
15.
16.保护cell
17.$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection!
18.$objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel');
19.设置格式
20.// Set cell number formats
21.echo date('H:i:s') . " Set cell number formats\n";
22.$objPHPExcel->getActiveSheet()->getStyle('E4')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);
23.$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4'), 'E5:E13' );
24.设置宽width
25.// Set column widths
26.$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);
27.$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);
28.设置font
29.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara');
30.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20);
31.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);
32.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
33.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
34.$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
35.$objPHPExcel->getActiveSheet()->getStyle('D13')->getFont()->setBold(true);
36.$objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold(true);
37.设置align
38.$objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
39.$objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
40.$objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
41.$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
42.//垂直居中
43.$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
44.设置column的border
45.$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
46.$objPHPExcel->getActiveSheet()->getStyle('B4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
47.$objPHPExcel->getActiveSheet()->getStyle('C4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
48.$objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
49.$objPHPExcel->getActiveSheet()->getStyle('E4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
50.设置border的color
51.$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->getColor()->setARGB('FF993300');
52.$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getTop()->getColor()->setARGB('FF993300');
53.$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getBottom()->getColor()->setARGB('FF993300');
54.$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getTop()->getColor()->setARGB('FF993300');
55.$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getBottom()->getColor()->setARGB('FF993300');
56.$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getRight()->getColor()->setARGB('FF993300');
57.设置填充颜色
58.$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
59.$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FF808080');
60.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
61.$objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->getStartColor()->setARGB('FF808080');
62.加图片
63.$objDrawing = new PHPExcel_Worksheet_Drawing();
64.$objDrawing->setName('Logo');
65.$objDrawing->setDescription('Logo');
66.$objDrawing->setPath('./images/officelogo.jpg');
67.$objDrawing->setHeight(36);
68.$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
69.$objDrawing = new PHPExcel_Worksheet_Drawing();
70.$objDrawing->setName('Paid');
71.$objDrawing->setDescription('Paid');
72.$objDrawing->setPath('./images/paid.png');
73.$objDrawing->setCoordinates('B15');
74.$objDrawing->setOffsetX(110);
75.$objDrawing->setRotation(25);
76.$objDrawing->getShadow()->setVisible(true);
77.$objDrawing->getShadow()->setDirection(45);
78.$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
79.//处理中文输出问题
80.需要将字符串转化为UTF-8编码,才能正常输出,否则中文字符将输出为空白,如下处理:
81. $str = iconv('gb2312', 'utf-8', $str);
82.或者你可以写一个函数专门处理中文字符串:
83.function convertUTF8($str)
84.{
85. if(empty($str)) return '';
86. return iconv('gb2312', 'utf-8', $str);
87.}
- thinkphp excel表格导出
- Thinkphp导出Excel表格
- Thinkphp使用PHPExcel导出Excel表格
- [php] thinkphp使用csv导出excel表格
- thinkphp使用PHPExcel导出excel表格
- 个人总结thinkphp中导出数据到excel表格
- thinkphp导出Excel
- thinkphp 导出excel
- ThinkPHP+Excel 数据导出
- ThinkPHP excel导出
- thinkPHP excel 导出
- ThinkPHP导出Excel
- javascript表格导出Excel
- (表格)导出excel
- 【Java】导出excel表格
- JAVA 导出 excel 表格
- C#导出EXCEL表格
- Java导出excel表格
- WAS控制台界面访问出错(默认9060端口)
- Servlet_HttpSession详解
- 树状数组模板题hdu1166
- 高可用集群+fence
- IBinder, BBinder和BpBinder
- thinkphp excel表格导出
- c++ 分析现有代码错误
- 读写Excel
- 表单提交转码使中文正常显示
- ubuntu如何去除'Enter password to unlock your login keyring'提示框
- Android LocalBroadcastManager 注册广播和直接registerReceiver的区别
- 第三篇 Android kernel 动态编译的环境搭建
- JSP 单击退出系统按钮跳出整个Frame框架
- hadoop(三)命令测试