ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
29advancedvaluebinder.php
Go to the documentation of this file.
1 <?php
29 error_reporting(E_ALL);
30 ini_set('display_errors', TRUE);
31 ini_set('display_startup_errors', TRUE);
32 
33 define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');
34 
36 require_once dirname(__FILE__) . '/../Classes/PHPExcel.php';
37 
38 
39 // Set timezone
40 echo date('H:i:s') , " Set timezone" , EOL;
41 date_default_timezone_set('UTC');
42 
43 // Set value binder
44 echo date('H:i:s') , " Set value binder" , EOL;
46 
47 // Create new PHPExcel object
48 echo date('H:i:s') , " Create new PHPExcel object" , EOL;
50 
51 // Set document properties
52 echo 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
62 echo 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
67 echo 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
72 echo 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
158 echo 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
167 echo date('H:i:s') , " Write to Excel2007 format" , EOL;
169 $objWriter->save(str_replace('.php', '.xlsx', __FILE__));
170 echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL;
171 // Save Excel5 file
172 echo date('H:i:s') , " Write to Excel5 format" , EOL;
174 $objWriter->save(str_replace('.php', '.xls', __FILE__));
175 echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL;
176 
177 
178 // Echo memory peak usage
179 echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL;
180 
181 // Echo done
182 echo date('H:i:s') , " Done writing file" , EOL;
183 echo 'File has been created in ' , getcwd() , EOL;
const EOL
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
if($is_dev) echo "Review changes write something in WHATSNEW and and then commit with log PHP_EOL
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())