Componette

Componette

CSV Response

Use:

class SomePresenter extends BasePresenter
{
    public function actionDefault()
    {
        $data = [
            [ 'name' => 'George', 'age' => 15, 'grade' => 2, ],
            [ 'name' => 'Jack', 'age' => 17, 'grade' => 4, ],
            [ 'name' => 'Mary', 'age' => 17, 'grade' => 1, ],
        ];

        $response = new \Nette\Application\Responses\CsvResponse($data, 'students.csv');
        $this->sendResponse( $response );
    }
}

Individual settings example:

use Nette\Application\Responses\CsvResponse;

$response
	->setGlue( CsvResponse::SEMICOLON )
	->setOutputCharset( 'cp1250' )
	->setContentType( 'application/csv' )
	->setHeadingFormatter( 'strtoupper' )
	->setDataFormatter( 'trim' )
;

No release at this moment. Try to create first one.

Componette Componette felix@nette.org