我使用Maatwebsite excel将数据导出到excel。我正在使用laravel框架。我的阵列看起来像这样: -
Array
(
[0] => Array
(
[0] => Name
[1] => Salary
[2] => Age
[3] => Gender
)
[1] => Array
(
[0] => Kunal
[1] => 12000
[2] => 15
[3] => M
)
[2] => Array
(
[0] => Kunal
[1] => 16000
[2] => 17
[3] => m
)
)
that is saved in this variable $detailArray
我的导出功能如下所示: -
Excel::create("Test", function($excel) use($detailArray) {
$excel->sheet('Sheet', function($sheet) use($detailArray) {
$sheet->fromArray($detailArray, null, 'A1', true);
});
})->export('xls');
现在我想删除0,1,2,3这些键,如图所示。 请帮我解决这个问题。谢谢。
答案 0 :(得分:1)
最后我做到了这一点。希望将来它会帮助别人。需要在FromArray函数中传递false。
$sheet->fromArray($data); to $sheet->fromArray($detailArray, null, 'A1', false, false);
答案 1 :(得分:0)
打开配置文件excel
,在export
数组下,将generate_heading_by_indices
更改为false
。这应该删除使用的标题索引,因为它表示使用属性名称或数组的索引作为标题。
注意:这是
"maatwebsite/excel": "~2.1.0"
由于您要删除array keys for tis function not for all exporting functions
,您可以执行
config(['excel.export.generate_heading_by_indices' => false]);
//my other export functions below
注意:我没有测试过这个。
答案 2 :(得分:0)
您可能需要使用查询输出执行此类操作,以便在导出时无法使用任何类型的键
$tableData = TableListMember::select(DB::RAW('IF(tbl_tablelist_members.member_type = "m","Team Member","Candidate") as UserType,tbl_tablelist.tablelist_name as TableName, tbl_event.event_code as Weekend, IF(tbl_tablelist_members.member_type = "m", users.first_name, tbl_candidates.first_name) as FirstName, IF(tbl_tablelist_members.member_type = "m", users.last_name, tbl_candidates.last_name) as LastName, tbl_user_roll.st_roll_name as Role, IF(tbl_tablelist_members.member_type = "m", users.address, tbl_candidates.address) as Address, IF(tbl_tablelist_members.member_type = "m", tbl_state_county.county, tbl_state_county.county) as County, IF(tbl_tablelist_members.member_type = "m", users.phone_no, tbl_candidates.phone_no) as Phone, IF(tbl_tablelist_members.member_type = "m", users.email, tbl_candidates.email) as Email, IF(tbl_tablelist_members.member_type = "m", users.church, tbl_candidates.church) as Church, IF(tbl_tablelist_members.member_type = "m", users.music, "") as Music, IF(tbl_tablelist_members.member_type = "m", IF(users.reunion_group = 0 ,"No","Yes"), "") as Reunion_Group'))
->leftjoin('tbl_tablelist','tbl_tablelist.tablelist_id','tbl_tablelist_members.tablelist_id')
->leftjoin('tbl_event','tbl_event.id','tbl_tablelist.event_id')
->leftjoin('tbl_user_roll','tbl_user_roll.id','tbl_tablelist_members.role')
->leftjoin('users','users.id','tbl_tablelist_members.member_candidate_id')
->leftjoin('tbl_candidates','tbl_candidates.id','tbl_tablelist_members.member_candidate_id')
->leftjoin('tbl_state_county','tbl_state_county.id','tbl_candidates.county_id')
->where(DB::RAW('event_id'), $request->id)->orderBy('tbl_tablelist.tablelist_id','ASC')->orderBy('tbl_tablelist_members.displayorder')->get()->toArray();
// dd($tableData[0]);
return Excel::create('TableList ',function($excel) use ($tableData) {
$excel->sheet('mySheet', function($sheet) use ($tableData) {
$sheet->fromArray($tableData);
});
})->download('csv');
我希望这个查询和源代码可以帮助您解决问题 你也可以根据你的要求编写查询,我已经为了解决问题的目的编写了查询,是的,它是工作代码所以你可以自由地实现这个代码。