Generates the actual export from given data.
Description
See also
Parameters
- $columns
-
(array) (Required) Associative columns array of
$column_slug => $column_label
pairs. - $rows
-
(array) (Required) Rows array where each row is an associative array of
$column_slug => $column_value
pairs. - $form
-
(awsmug\Torro_Forms\DB_Objects\Forms\Form) (Required) Form for which submissions are being exported.
Source
File: src/components/submission-export-csv.php
protected function generate_export_from_data( $columns, $rows, $form ) { $filename = sanitize_title( $form->title ) . '.csv'; header( 'Content-type: text/csv' ); header( 'Content-Disposition: attachment; filename="' . $filename . '"' ); header( 'Pragma: no-cache' ); header( 'Expires: 0' ); $php_excel = new \PHPExcel(); $php_excel->setActiveSheetIndex( 0 ); $i = 0; foreach ( $columns as $slug => $label ) { $php_excel->getActiveSheet()->setCellValueByColumnAndRow( $i, 1, $label ); $i++; } $php_excel->getActiveSheet()->fromArray( $rows, null, 'A2' ); $writer = \PHPExcel_IOFactory::createWriter( $php_excel, 'CSV' ); $writer->setDelimiter( ';' ); $writer->setEnclosure( '"' ); $writer->setLineEnding( "\r\n" ); $writer->setSheetIndex( 0 ); $writer->save( 'php://output' ); exit; }
Changelog
Version | Description |
---|---|
1.0.0 | Introduced. |