Laravel 5.3响应() - >下载 - 文件(.doc,.docx)在下载后变得不可读

时间:2017-01-23 14:47:14

标签: laravel local-storage laravel-5.3 doc

Laravel 5.3

当我从存储文件夹下载文件(.doc,.docx)时,它变得不可读。如果我转到本地文件夹并打开文件,但它是有效和可读的。

我正在使用标准下载功能,使用标题和内容..看看我的代码:

$fileNameGenerate = 'example_filename';
$fileArr = [ 'wierd_filename', 'docx' ];
$cvPath = storage_path('app/example_folder/subfolder/wierd_filename.docx');

$headers = array(
    'Content-Type: application/' . $fileArr[1],
);

try {


    return response()->download($cvPath, $fileNameGenerate . '.' . $fileArr[1], $headers);


} catch (\Exception $e) {
    //Error
    return redirect()->back()->with('error', trans('locale.file_does_not_exists'));
}

有谁知道这里有什么问题吗?谢谢!

更新:我删除了标题,无论是否使用它们都无法使用。

以下是两种不同情况下文件的呈现方式:

The second file - gone wrong

2 个答案:

答案 0 :(得分:0)

试试这个 公共函数getDownload() {

// doc文件存储在storagepath / download / info.docx

$file= pathofstorage. "/download/info.docx";   

return response()->download($file);

}

答案 1 :(得分:0)

我补充说:

ob_end_clean();

之前:

response -> download

它对我有用。