29 error_reporting(E_ALL);
30 ini_set(
'display_errors', TRUE);
31 ini_set(
'display_startup_errors', TRUE);
32 date_default_timezone_set(
'Europe/London');
34 define(
'EOL',(PHP_SAPI ==
'cli') ?
PHP_EOL :
'<br />');
37 require_once dirname(__FILE__) .
'/../Classes/PHPExcel.php';
41 echo
date(
'H:i:s') ,
" Create new PHPExcel object" ,
EOL;
45 echo
date(
'H:i:s') ,
" Set document properties" ,
EOL;
46 $objPHPExcel->getProperties()->setCreator(
"Maarten Balliauw")
47 ->setLastModifiedBy(
"Maarten Balliauw")
48 ->setTitle(
"Office 2007 XLSX Test Document")
49 ->setSubject(
"Office 2007 XLSX Test Document")
50 ->setDescription(
"Test document for Office 2007 XLSX, generated using PHP classes.")
51 ->setKeywords(
"office 2007 openxml php")
52 ->setCategory(
"Test result file");
56 echo
date(
'H:i:s') ,
" Add some data" ,
EOL;
57 $objPHPExcel->getActiveSheet()->setCellValue(
'A5',
'Sum:');
59 $objPHPExcel->getActiveSheet()->setCellValue(
'B1',
'Range #1')
60 ->setCellValue(
'B2', 3)
61 ->setCellValue(
'B3', 7)
62 ->setCellValue(
'B4', 13)
63 ->setCellValue(
'B5',
'=SUM(B2:B4)');
64 echo
date(
'H:i:s') ,
" Sum of Range #1 is " ,
65 $objPHPExcel->getActiveSheet()->getCell(
'B5')->getCalculatedValue() ,
EOL;
67 $objPHPExcel->getActiveSheet()->setCellValue(
'C1',
'Range #2')
68 ->setCellValue(
'C2', 5)
69 ->setCellValue(
'C3', 11)
70 ->setCellValue(
'C4', 17)
71 ->setCellValue(
'C5',
'=SUM(C2:C4)');
72 echo
date(
'H:i:s') ,
" Sum of Range #2 is " ,
73 $objPHPExcel->getActiveSheet()->getCell(
'C5')->getCalculatedValue() ,
EOL;
75 $objPHPExcel->getActiveSheet()->setCellValue(
'A7',
'Total of both ranges:');
76 $objPHPExcel->getActiveSheet()->setCellValue(
'B7',
'=SUM(B5:C5)');
77 echo
date(
'H:i:s') ,
" Sum of both Ranges is " ,
78 $objPHPExcel->getActiveSheet()->getCell(
'B7')->getCalculatedValue() ,
EOL;
80 $objPHPExcel->getActiveSheet()->setCellValue(
'A8',
'Minimum of both ranges:');
81 $objPHPExcel->getActiveSheet()->setCellValue(
'B8',
'=MIN(B2:C4)');
82 echo
date(
'H:i:s') ,
" Minimum value in either Range is " ,
83 $objPHPExcel->getActiveSheet()->getCell(
'B8')->getCalculatedValue() ,
EOL;
85 $objPHPExcel->getActiveSheet()->setCellValue(
'A9',
'Maximum of both ranges:');
86 $objPHPExcel->getActiveSheet()->setCellValue(
'B9',
'=MAX(B2:C4)');
87 echo
date(
'H:i:s') ,
" Maximum value in either Range is " ,
88 $objPHPExcel->getActiveSheet()->getCell(
'B9')->getCalculatedValue() ,
EOL;
90 $objPHPExcel->getActiveSheet()->setCellValue(
'A10',
'Average of both ranges:');
91 $objPHPExcel->getActiveSheet()->setCellValue(
'B10',
'=AVERAGE(B2:C4)');
92 echo
date(
'H:i:s') ,
" Average value of both Ranges is " ,
93 $objPHPExcel->getActiveSheet()->getCell(
'B10')->getCalculatedValue() ,
EOL;
97 echo
date(
'H:i:s') ,
" Rename worksheet" ,
EOL;
106 echo
date(
'H:i:s') ,
" Write to Excel2007 format" ,
EOL;
119 $objWriter->save(str_replace(
'.php',
'.xlsx', __FILE__));
123 echo
date(
'H:i:s') ,
" File written to " , str_replace(
'.php',
'.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) ,
EOL;
124 echo
'Call time to write Workbook was ' , sprintf(
'%.4f',
$callTime) ,
" seconds" ,
EOL;
126 echo
date(
'H:i:s') ,
' Current memory usage: ' , (memory_get_usage(
true) / 1024 / 1024) ,
" MB" , EOL;
130 echo
date(
'H:i:s') ,
" Write to Excel5 format" ,
EOL;
131 $callStartTime = microtime(
true);
134 $objWriter->save(str_replace(
'.php',
'.xls', __FILE__));
138 echo
date(
'H:i:s') ,
" File written to " , str_replace(
'.php',
'.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) ,
EOL;
139 echo
'Call time to write Workbook was ' , sprintf(
'%.4f',
$callTime) ,
" seconds" ,
EOL;
141 echo
date(
'H:i:s') ,
' Current memory usage: ' , (memory_get_usage(
true) / 1024 / 1024) ,
" MB" , EOL;
145 echo
date(
'H:i:s') ,
" Peak memory usage: " , (memory_get_peak_usage(
true) / 1024 / 1024) ,
" MB" , EOL;
148 echo
date(
'H:i:s') ,
" Done writing files" ,
EOL;
149 echo
'Files have been created in ' , getcwd() ,
EOL;
static createWriter(PHPExcel $phpExcel, $writerType='')
Create PHPExcel_Writer_IWriter.
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())