リーグ csv と laravel 5 を使用して、csv ファイルからデータを抽出し、mysql データベースにインポートしています。インポートは成功しますが、スクリプトによって余分な空白行がデータベースに追加されます。したがって、csv ファイルに 5 つの行がある場合、mysql には 6 が入力され、6 番目の行は空白になります。
DB::table('repositories')->delete();
$csv = Reader::createFromPath($path_to_file);
DB::table('repositories')->insert($csv->fetchAssoc(['last_name','first_name', 'matricule', 'username']));
flash()->success('Repository updated successfully');
return redirect('repositories');
注意:
- CSV ファイルに余分な空白行が含まれていない
- print_r($csv->fetchAssoc(['last_name', 'first_name', 'matricule', 'username'])) は以下のように返されます:
Array ( [0] => Array ( [last_name] => test [first_name] => user [matricule] => M39812 [username] => test ) [1] => Array ( [last_name] => john [first_name] => doe [matricule] => M39849 [username] => john2015 ) [2] => 配列 ( [last_name] => [first_name] => [matricule] => [username] => ) )
配列 2 が結果に追加される理由がわかりません。