Laravel Excel将设置值导出到单元格?

我已经使用maatwebsite excel库导入和导出数据。 我想设置单元格明智的数据。

ABCDEF 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等等。

我找不到任何让我为细胞增值的function。

请帮助我如何pipe理这个。 我有像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' ) ) 

我怎样才能input这个数组来excel文件。 如果我需要改变arrays,请build议我。 我能够改变我的arrays。

谢谢

使用这个函数,并在最后更改文件(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库来做到这一点。

不知道是否它解决了你的问题,但看到标题有人试图设置单个单元格的值可能最终在这里:)

它没有logging,但看在源代码我发现它是可能的:

 $sheet->setCellValue('A1', 'some value'); 

要么

 $sheet->cell('A1', function($cell) { $cell->setValue('some value'); }); 

有点偏离主题,但我希望它可以帮助一些人。