Могу ли я игнорировать импорт столбцов Excel на веб-сайте Laravel-Excel Maat?
В моем примере есть столбец A B C D E F G H. Но у меня есть 4 разных типа файлов Excel, а именно:
- Файл 1, есть заголовок столбца A B C F G H
- Файл 2, есть заголовок столбца A B F G H
- Файл 3, есть заголовок столбца A B C D E F
- Файл 4, есть заголовок столбца A B C D E F G H
Я пробовал использовать WithHeadingRow в ExcelImport, но ответ при импортировании файла 1 был Неопределенный индекс: header_D.
в моем ExcelController:
Excel::Import(new \App\Imports\ExcelImport,$request->file('file'));
return redirect('/excel')->with("sukses","Data profiling berhasil di import");
в моем ExcelImport:
class ProfilingImport implements ToCollection, WithChunkReading, WithCalculatedFormulas, WithHeadingRow
{
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
use Importable;
public function collection(Collection $collection)
{
$collection = $collection->toArray();
foreach ($collection as $key => $row){
if($key >= 2){
return Profiling::create([
'A' => $row['A'],
'B' => $row['B'],
'C' => $row['C'],
'D' => $row['D'],
'E' => $row['E'],
'F' => $row['F'],
'G' => $row['G'],
'H' => $row['H'],
]);
}
}
Файл Excel:
| A | B | C | G | H |
|111|523|585|785|789|
| A | B | F | G | H |
|785|556|712|368|782|
| A | B | C | D | E | F |
|524|756|624|765|522|446|
| A | B | C | D | E | F | G | H |
|123|456|789|012|345|678|901|234|