| 
									
										
										
										
											2016-08-31 16:15:54 +00:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | require __DIR__ . '/Header.php'; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-10-06 11:49:41 +00:00
										 |  |  | $helper->log('Load from Xls template'); | 
					
						
							|  |  |  | $reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xls'); | 
					
						
							| 
									
										
										
										
											2016-08-31 16:15:54 +00:00
										 |  |  | $spreadsheet = $reader->load(__DIR__ . '/templates/30template.xls'); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | $helper->log('Add new data to the template'); | 
					
						
							|  |  |  | $data = [['title' => 'Excel for dummies', | 
					
						
							|  |  |  |         'price' => 17.99, | 
					
						
							|  |  |  |         'quantity' => 2, | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  |     ['title' => 'PHP for dummies', | 
					
						
							|  |  |  |         'price' => 15.99, | 
					
						
							|  |  |  |         'quantity' => 1, | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  |     ['title' => 'Inside OOP', | 
					
						
							|  |  |  |         'price' => 12.95, | 
					
						
							|  |  |  |         'quantity' => 1, | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  | ]; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-31 17:18:12 +00:00
										 |  |  | $spreadsheet->getActiveSheet()->setCellValue('D1', \PhpOffice\PhpSpreadsheet\Shared\Date::PHPToExcel(time())); | 
					
						
							| 
									
										
										
										
											2016-08-31 16:15:54 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | $baseRow = 5; | 
					
						
							|  |  |  | foreach ($data as $r => $dataRow) { | 
					
						
							|  |  |  |     $row = $baseRow + $r; | 
					
						
							|  |  |  |     $spreadsheet->getActiveSheet()->insertNewRowBefore($row, 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $spreadsheet->getActiveSheet()->setCellValue('A' . $row, $r + 1) | 
					
						
							|  |  |  |             ->setCellValue('B' . $row, $dataRow['title']) | 
					
						
							|  |  |  |             ->setCellValue('C' . $row, $dataRow['price']) | 
					
						
							|  |  |  |             ->setCellValue('D' . $row, $dataRow['quantity']) | 
					
						
							|  |  |  |             ->setCellValue('E' . $row, '=C' . $row . '*D' . $row); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | $spreadsheet->getActiveSheet()->removeRow($baseRow - 1, 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Save
 | 
					
						
							|  |  |  | $helper->write($spreadsheet, __FILE__); |