Laravel导出数据到Excel文件需要修改

我想从表中下载2个用户的数据,我想生成这个数据的excel文件。

这里只有一个名为registerdetails的数据表的下载function。

public function export(){ $items = registerdetails::all(); Excel::create('General Trainee Details', function($excel) use($items){ $excel->sheet('Sheet 1', function($sheet) use($items){ $sheet->fromArray($items); }); })->export('xlsx'); } 

我需要修改控制器从registerdetailsbankdetails获取数据。 如果有人能帮我解决这个问题?

尝试这个

 public function collectionexport_all(){ $items = registerdetails::join('bankdetails', 'bankdetails.id', '=', 'registerdetails.id')->get(); $itemsArray = []; foreach ($items as $item) { $itemsArray[] = $item->toArray(); } Excel::create('Full Details', function($excel) use($itemsArray){ $excel->sheet('Sheet 1', function($sheet) use($itemsArray){ $sheet->fromArray($itemsArray); }); })->export('xlsx'); } 

我不知道你想要达到什么。但我希望这有助于。

您正在使用的Excel库(希望它是maatwebsite / excel或类似的)可以使用Eloquent查询或查询生成器,如下所示:

 public function export($id){ Excel::create('General Trainee Details', function($excel) use($id){ $excel->sheet('Sheet 1', function($sheet) use($id){ $query= registerdetails::select(['registerdetailscolumn_1', 'registerdetailscolumn_2')->leftjoin('bankdetails', 'registerdetailscolumn_id', '=', 'bankdetailscolumn_id')->where(registerdetailscolumn_id, '=', $id); $sheet->fromModel($query); }); })->export('xlsx'); } 

当然,知道你可以提供和传递任何员工的身份证。

您可以在一张纸上导出一张表,在另一张纸上导出另一张表,如下所示:

  public function export(){ Excel::create('General Trainee Details', function($excel) use($id){ $excel->sheet('Sheet 1', function($sheet){ $query= registerdetails::all(); $sheet->fromModel($query); }); $excel->sheet('Sheet 2', function($sheet){ $query= bankdetails::all(); $sheet->fromModel($query); }); })->export('xlsx'); }