Как исправить ошибку при импорте csv файла в Laravel?
Хочу сделать импорт csv файлов в DB.
Laravel Nova(standalone action) используя Laravel-Excel.
Вот мой импорт:
public function model(array $row)
{
return new User([
'fname' => $row['fname'],
'lname' => $row['lname'],
'mname' => $row['mname'],
'insurance_number' => $row['insurance_number'],
'passport' => $row['passport'],
'tin' => $row['tin'],
'birthday' => $row['birthday'],
'country' => $row['country'],
'state' => $row['state'],
'city' => $row['city'],
'address' => $row['address'],
]);
}
Делаю все по докам(Laravel-Excel), но на входе получаю вот такой массив dd($row):
^ array:2 [
"idfnamelnamemnameinsurance_numberpassporttinbirthdaycountrystatecityaddresscreated_atupdated_at" => "264;"Katherine";"Witting";"Altenwerth";"13809944975";"7272797335";"964995145319";"1972-05-18";"Algeria";"Montana";"Port Bart";"3017 Jamar Hills Suite 843"
"" => null
]
Как это можно исправить? или так и должно быть и просто я чет не так делаю?( Ошибка: "Undefined index: fname"
Ответы (1 шт):
Проблема была в файле. Если экспортировать из БД Файл CSV или Excel - то согласно докам Laravel Excel (start 5 min.) съест без проблем. Но такая проблема возникнет если экспортировать файл CSV для Excel. При попытке съесть такой файл, headingrow будет склеен и вернется массив($row) над которым придется уже проводить доп. манипуляции, скорее всего при помощи форматирования HeadingRow.