导出为ex​​cel文件一个特定的行logging

在laravel 5.1使用maatweb / Excel包我需要导出特定的行logging到当前页面id正在查看的excel文件

在我的VlistController

public function export() { Excel::create('Company List', function($excel) { $excel->sheet('companies', function($sheet) { $data = Vlist::all(); $data = json_decode(json_encode($data),true); $companies = []; foreach ($data as $key => $value) { $company['vname']= $value['vname']; $company['vaddress']= $value['vaddress']; $companies[] = $company; } $sheet->fromArray($companies); }); })->download('xlsx'); } 

在我的路线文件

 Route::get('/vlist/{vlist}/export' , 'VlistController@export'); 

在我的秀场看来

 <li><a href="{{ action('VlistController@export', [$vlist->id]) }}"><i class='fa fa-link'></i> <span>Export Supplier : {!! $vlist->vname !!}</span></a></li> 

上面的控制器代码列出了Excel工作表中的所有logging,我只需要一个具有活动标识的特定logging。

如果我理解你的问题,你可以试试这个代码。你可以通过你的主键查询来检索特定的行。

 public function export($id) { Excel::create('Company List', function($excel) use ($id) { $excel->sheet('companies', function($sheet) use ($id) { $data = Vlist::where('id', $id)->get(); $data = json_decode(json_encode($data),true); $companies = []; foreach ($data as $key => $value) { $company['vname']= $value['vname']; $company['vaddress']= $value['vaddress']; $companies[] = $company; } $sheet->fromArray($companies); }); })->download('xlsx'); } 

我不认为下面的代码是必要的。

 $data = json_decode(json_encode($data),true); $companies = []; foreach ($data as $key => $value) { $company['vname']= $value['vname']; $company['vaddress']= $value['vaddress']; $companies[] = $company; } 

您可以简单地使用检索特定的数据

 $data = Vlist::where('id', $id)->get(['vname', 'vaddress']); 

并将其传递给该方法

 $sheet->fromArray($data); 

谢谢