我使用了maatwebsite excel库来导入和导出数据。 我想设置像。的单元格数据。
A B C D E F
1 heading1 heading2 heading3 heading4 heading5 heading6
2 data1 data2 data3 data4 data5 data6
3 data12 data22 data32 data42 data52 data62
4 data23 data33 data43 data53
5 data34 data44 data54
6 data35 data45 data54
7 data46 data56
8 data47 data57
9 data48
10 data49
11 data50
12 data51
我想导出数据,我尝试了很多但不成功。
下面是我的代码。
$sheet->fromArray($dataHeading);
我使用此函数为excel文件添加值。但问题是这个函数增加了原始的价值我想要明智地增加价值。
首先,我向A
添加价值,然后B
等...
我无法找到任何允许我为单元格增加价值的功能。
请帮助我如何管理这个。我的数据像php数组一样。
array(
'heading1' => array(
'data1','data12'
),
'heading2' => array(
'data2','data22','data23'
),
'heading3' => array(
'data3','data32','data33','data34','data35'
),
'heading4' => array(
'data4','data42','data43','data44','data45','data46','data47','data47','data49','data50','data51'
),
'heading5' => array(
'data5','data52','data53','data54','data56','data57'
),
'heading6' => array(
'data6','data62'
)
)
如何将此数组输入excel文件。如果我需要改变数组,请建议我。我能够改变我的阵列。
由于
答案 0 :(得分:2)
不确定它是否解决了您的问题,但看到标题,有些人试图设置单个单元格的值可能最终会在这里结束:)
没有记录,但查看源代码我发现它是可能的:
$sheet->setCellValue('A1', 'some value');
或
$sheet->cell('A1', function($cell) {
$cell->setValue('some value');
});
有点偏离主题,但我希望无论如何它会帮助一些人。
答案 1 :(得分:1)
使用此函数并在最后更改文件(xls,csv等)的扩展名,您将获得具有正确数据的所需文件。
public function exportCSV(Request $request){
$data = array();
$messageemail = '';
$data['usertotal'] = User::select('name','email','mobile')->orderBy('name','ASC')->get();
$data['total-user'] = array();
$percounting = 0;
foreach($data['usertotal'] as $datanew){
$data['total-user'][$percounting]['email'] = $datanew->email;
$data['total-user'][$percounting]['mobile'] = $datanew->mobile;
$data['total-user'][$percounting]['name'] = $datanew->name;
$percounting++;
}
/* Start Exporting Data */
Excel::create(time(), function($excel) use($data) {
$excel->sheet('Sheetname', function($sheet) use($data) {
$datasheet = array();
$datasheet[0] = array('email','mobile','fullname');
$i=1;
foreach($data['total-user'] as $datanew){
$datasheet[$i] = array( @$datanew['email'],
$datanew['mobile'],
$datanew['name'],
);
$i++;
}
$sheet->fromArray($datasheet);
});
})->export('xls');
return Redirect::back();
}
注意:此功能是maatwebsite包所必需的。如果您不想使用此软件包,那么您也可以通过核心php库执行此操作。