我正在努力yii2。我正在通过创建一个 excel 文件php spreadsheet。现在,我正在浏览器中下载它。现在,我想返回文件而不下载它。
代码:
// Created 2 worksheet in one excel file successfully
$filename = 'Meter Breakdown List '.date('d-m-y').'.xlsx'; //save our workbook as this file name
// Redirect output to a client’s web browser (Xlsx)
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$filename.'"');
header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('php://output');
之后我希望它返回文件return $filename;
然后将返回的文件传递给名为sendEmail($filename)
在此功能中,我已经设置了通过附件发送电子邮件的过程。
如何在不下载的情况下发送文件?
笔记:
我也看过这个问题:PHP create Excel 电子表格,然后将其作为附件通过电子邮件发送。