如何使用PHPExcel选择保存excel文件的位置
使用PHPExcel创建excel文件时出现问题。我想选择保存excel文件的位置,但不知道如何保存如何使用PHPExcel选择保存excel文件的位置,php,yii,phpexcel,Php,Yii,Phpexcel,使用PHPExcel创建excel文件时出现问题。我想选择保存excel文件的位置,但不知道如何保存 $model = new User(); $labels = $model->attributeNames(); $data = $model->findAll(); $objPHPExcel = Yii::app()->excel; ........ $filename = 'text.xlsx'; $objWriter = new PHPExcel_Writer_
$model = new User();
$labels = $model->attributeNames();
$data = $model->findAll();
$objPHPExcel = Yii::app()->excel;
........
$filename = 'text.xlsx';
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter->save($filename);
请帮帮我。非常感谢你
$objWriter->save($filename);
。。。。将$filename
的值更改为要保存文件的任何位置的文件路径,例如
$filename = '/path/to/folder/test.xlsx';
$objWriter->save($filename);
如果您在php文件中包含以下标题。您的用户将有一个下载选项弹出窗口:
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=$filename");
header("Content-Transfer-Encoding: binary ");
将文件名更改为所需路径,即
$name = '/path/to/folder/xyz.xlsx';
$objWriter->save($name);
使用PHPExcel下载EXCEL对我来说很有用…:
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
对于使用Excel5编写器创建的.xls文件:
header('Content-Type: application/vnd.ms-excel'); //mime type
或
对于使用Excel2007 Writer创建的.xlsx文件:
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //mime type
header('Content-Disposition: attachment;filename="you-file-name.xlsx"'); //tell browser what's the file name
header('Cache-Control: max-age=0'); //no cache
ob_end_clean();
$objWriter->save('php://output'`enter code here`);
exit();
您是否尝试将
$filename
更改为/path/to/save/text.xlsx
?您无法控制用户/客户端浏览器将文件保存在何处,您不应该能够。。。。如果你想在用户机器上保存到<代码> /ETC/PasWD < /Cord>,如果它是PimiTeExcel的话,那将是一个难以置信的安全缺陷:当点击按钮显示窗口时,我有1个按钮来选择位置保存。怎么做?您的意思是要将文件发送到用户的浏览器?然后让他们选择要将文件保存在电脑上的哪个文件夹?然后发送相应的标题,并保存到php://output
如/Examples/01simple download xlsx.php所示
@ZaidBinKhalid如果要将文件保存到磁盘,则需要为保存()提供文件系统文件名
方法而不是输出流。。。这将保存到服务器上的一个文件中,您可以对其进行压缩,然后将zipfile发送到浏览器。。。但是http将您限制为一个请求、一个响应,一次不能向服务器发送多个输出/文件time@MarkBaker谢谢,这对我来说很好。我只是传递绝对路径并删除所有标题。