如何将隐藏文件发送到 laravel 的视图 (5.7)

how to send hidden file to view of laravel (5.7)

我正在创建用于导入 excel 文件的导入函数。控制器将处理它并将数据保存到 database.and 之后,我想将错误导出到 excel 文件并将其发送到视图。如果用户点击下载,excel 文件包含错误将被下载,否则什么都不做。

所以,我想向视图发送一个隐藏文件,以避免将文件保存到数据库中。

怎么做,求助!

在控制器中处理导入后,您可以将错误数据传递到数组并将其发送到会话,如下所示:

$request->session()->put('err_file', $arr_err_data);

并创建获取错误文件的函数:

 public function getErrFile(){
        return Excel::create('Error', function ($excel){
            $excel->sheet('Error', function ($sheet) {
                $arr_err=Session::get('err_file');
                $sheet->fromArray($arr_err);
            });
        })->download('xlsx');
    }

不要忘记为此函数创建路由:

Route::get('/get_err_file', 'YourController@getErrFile');

最后,可以创建link下载:

<a class="btn btn-link" href="{{url('get_err_file')}}" >Download</a>

希望对您有所帮助!