Stream the file as Response.
public createStreamedResponse ( PHPExcel_Writer_IWriter $writer, integer $status = 200, array $headers = [] ) : Symfony\Component\HttpFoundation\StreamedResponse | ||
$writer | PHPExcel_Writer_IWriter | |
$status | integer | |
$headers | array | |
return | Symfony\Component\HttpFoundation\StreamedResponse |
/** * @inheritdoc */ public function createResponse() { $writer = $this->factory->createWriter($this->phpExcel, 'Excel5'); $response = $this->factory->createStreamedResponse($writer); $response->headers->set('Content-Type', 'text/vnd.ms-excel; charset=utf-8'); $response->headers->set('Content-Disposition', 'attachment;filename=datagrid-export.xls'); $response->headers->set('Pragma', 'public'); $response->headers->set('Cache-Control', 'maxage=1'); return $response; }
public function testCreateStreamedResponse() { $writer = $this->getMock('\\PHPExcel_Writer_IWriter'); $writer->expects($this->once())->method('save')->with('php://output'); $factory = new Factory(); $factory->createStreamedResponse($writer)->sendContent(); }