tacoberu / nette-response-spreadsheet
Spreadsheet Nette responses. Support csv, msxml, xsl, xslt, ods, slk, gnumeric, html.
v1.0.0
2016-12-22 05:27 UTC
Requires
- php: >=5.3.0
- box/spout: 1.*
- nette/application: >=2.2
- phpoffice/phpexcel: >=1.7.9
Requires (Dev)
- php: >=5.3.0
- phpunit/phpunit: ~4.0
This package is auto-updated.
Last update: 2024-11-18 00:05:17 UTC
README
Spreadsheet Nette responses.
Use:
use Taco\Nette\Application\Responses; class SomePresenter extends BasePresenter { function actionDefault() { $data = [ [ 'George', 'age' => 15, 'grade' => 2, ], [ 'Jack', 'age' => 17, 'grade' => 4, ], [ 'name' => 'Mary', 'age' => 17, 'grade' => 1, ], ]; $response = new Responses\SpreadsheetResponse($data); $this->sendResponse( $response ); } }
With headers
use Taco\Nette\Application\Responses; class SomePresenter extends BasePresenter { function actionDefault() { $headers = [ 'Name', 'Age', 'Grade']; $data = [ [ 'George', 15, 2, ], [ 'Jack', 17, 4, ], [ 'Mary', 17, 1, ], ]; $response = new Responses\SpreadsheetResponse($data, $headers); $this->sendResponse( $response ); } }
Individual settings example:
use Taco\Nette\Application\Responses; class SomePresenter extends BasePresenter { function actionDefault() { $headers = [ 'Name', 'Age', 'Grade']; $data = [ [ 'George', 15, 2, ], [ 'Jack', 17, 4, ], [ 'Mary', 17, 1, ], ]; $response = new Responses\SpreadsheetResponse($data, $headers); $response ->setFilename('export') ->setTitle('Export'); $this->sendResponse( $response ); } }
Multiple sheets example:
use Taco\Nette\Application\Responses; class SomePresenter extends BasePresenter { function actionDefault() { $headers1 = [ 'Name', 'Age', 'Grade']; $data1 = [ [ 'George', 15, 2, ], [ 'Jack', 17, 4, ], [ 'Mary', 17, 1, ], ]; $headers2 = [ 'City', 'Population']; $data2 = [ [ 'Prague', 1.257, ], [ 'Paris', 2.211, ], [ 'London', 8.308, ], ]; $response = new Responses\SpreadsheetResponse($data1, $headers1); $response ->setFilename('export') ->setTitle('Export'); ->addSheet($data2, $headers2); $this->sendResponse( $response ); } }