ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
29advancedvaluebinder.php
Go to the documentation of this file.
1<?php
29error_reporting(E_ALL);
30ini_set('display_errors', TRUE);
31ini_set('display_startup_errors', TRUE);
32
33define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');
34
36require_once dirname(__FILE__) . '/../Classes/PHPExcel.php';
37
38
39// Set timezone
40echo date('H:i:s') , " Set timezone" , EOL;
41date_default_timezone_set('UTC');
42
43// Set value binder
44echo date('H:i:s') , " Set value binder" , EOL;
46
47// Create new PHPExcel object
48echo date('H:i:s') , " Create new PHPExcel object" , EOL;
50
51// Set document properties
52echo date('H:i:s') , " Set document properties" , EOL;
53$objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
54 ->setLastModifiedBy("Maarten Balliauw")
55 ->setTitle("Office 2007 XLSX Test Document")
56 ->setSubject("Office 2007 XLSX Test Document")
57 ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
58 ->setKeywords("office 2007 openxml php")
59 ->setCategory("Test result file");
60
61// Set default font
62echo date('H:i:s') , " Set default font" , EOL;
63$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setName('Arial');
64$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);
65
66// Set column widths
67echo date('H:i:s') , " Set column widths" , EOL;
68$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setAutoSize(true);
69$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(14);
70
71// Add some data, resembling some different data types
72echo date('H:i:s') , " Add some data" , EOL;
73$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String value:')
74 ->setCellValue('B1', 'Mark Baker');
75
76$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Numeric value #1:')
77 ->setCellValue('B2', 12345);
78
79$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Numeric value #2:')
80 ->setCellValue('B3', -12.345);
81
82$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Numeric value #3:')
83 ->setCellValue('B4', .12345);
84
85$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Numeric value #4:')
86 ->setCellValue('B5', '12345');
87
88$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Numeric value #5:')
89 ->setCellValue('B6', '1.2345');
90
91$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Numeric value #6:')
92 ->setCellValue('B7', '.12345');
93
94$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Numeric value #7:')
95 ->setCellValue('B8', '1.234e-5');
96
97$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Numeric value #8:')
98 ->setCellValue('B9', '-1.234e+5');
99
100$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Boolean value:')
101 ->setCellValue('B10', 'TRUE');
102
103$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Percentage value #1:')
104 ->setCellValue('B11', '10%');
105
106$objPHPExcel->getActiveSheet()->setCellValue('A12', 'Percentage value #2:')
107 ->setCellValue('B12', '12.5%');
108
109$objPHPExcel->getActiveSheet()->setCellValue('A13', 'Fraction value #1:')
110 ->setCellValue('B13', '-1/2');
111
112$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Fraction value #2:')
113 ->setCellValue('B14', '3 1/2');
114
115$objPHPExcel->getActiveSheet()->setCellValue('A15', 'Fraction value #3:')
116 ->setCellValue('B15', '-12 3/4');
117
118$objPHPExcel->getActiveSheet()->setCellValue('A16', 'Fraction value #4:')
119 ->setCellValue('B16', '13/4');
120
121$objPHPExcel->getActiveSheet()->setCellValue('A17', 'Currency value #1:')
122 ->setCellValue('B17', '$12345');
123
124$objPHPExcel->getActiveSheet()->setCellValue('A18', 'Currency value #2:')
125 ->setCellValue('B18', '$12345.67');
126
127$objPHPExcel->getActiveSheet()->setCellValue('A19', 'Currency value #3:')
128 ->setCellValue('B19', '$12,345.67');
129
130$objPHPExcel->getActiveSheet()->setCellValue('A20', 'Date value #1:')
131 ->setCellValue('B20', '21 December 1983');
132
133$objPHPExcel->getActiveSheet()->setCellValue('A21', 'Date value #2:')
134 ->setCellValue('B21', '19-Dec-1960');
135
136$objPHPExcel->getActiveSheet()->setCellValue('A22', 'Date value #3:')
137 ->setCellValue('B22', '07/12/1982');
138
139$objPHPExcel->getActiveSheet()->setCellValue('A23', 'Date value #4:')
140 ->setCellValue('B23', '24-11-1950');
141
142$objPHPExcel->getActiveSheet()->setCellValue('A24', 'Date value #5:')
143 ->setCellValue('B24', '17-Mar');
144
145$objPHPExcel->getActiveSheet()->setCellValue('A25', 'Time value #1:')
146 ->setCellValue('B25', '01:30');
147
148$objPHPExcel->getActiveSheet()->setCellValue('A26', 'Time value #2:')
149 ->setCellValue('B26', '01:30:15');
150
151$objPHPExcel->getActiveSheet()->setCellValue('A27', 'Date/Time value:')
152 ->setCellValue('B27', '19-Dec-1960 01:30');
153
154$objPHPExcel->getActiveSheet()->setCellValue('A28', 'Formula:')
155 ->setCellValue('B28', '=SUM(B2:B9)');
156
157// Rename worksheet
158echo date('H:i:s') , " Rename worksheet" , EOL;
159$objPHPExcel->getActiveSheet()->setTitle('Advanced value binder');
160
161
162// Set active sheet index to the first sheet, so Excel opens this as the first sheet
163$objPHPExcel->setActiveSheetIndex(0);
164
165
166// Save Excel 2007 file
167echo date('H:i:s') , " Write to Excel2007 format" , EOL;
169$objWriter->save(str_replace('.php', '.xlsx', __FILE__));
170echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL;
171// Save Excel5 file
172echo date('H:i:s') , " Write to Excel5 format" , EOL;
174$objWriter->save(str_replace('.php', '.xls', __FILE__));
175echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL;
176
177
178// Echo memory peak usage
179echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL;
180
181// Echo done
182echo date('H:i:s') , " Done writing file" , EOL;
183echo 'File has been created in ' , getcwd() , EOL;
memory_get_peak_usage(true)/1024/1024)
const EOL
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())
An exception for terminatinating execution or to throw for unit testing.
static setValueBinder(PHPExcel_Cell_IValueBinder $binder=NULL)
Set value binder to use.
Definition: Cell.php:949
static createWriter(PHPExcel $phpExcel, $writerType='')
Create PHPExcel_Writer_IWriter.
Definition: IOFactory.php:132