所以我使用Laravel,并使用Laravel excel加载excel / csv文件,但我的文件包含空行,我想删除每一个空行。
这是我的代码:
Excel::selectSheetsByIndex(0)->load($path, function($reader){
$results = $reader->noHeading()->toArray();
foreach ($results as $row) {
//my code
}
}, 'UTF-8');
所以,如果有人知道我怎么做,我将非常感激
答案 0 :(得分:2)
我认为你可以这样做
/** @var LaravelExcelReader $data */
$data = \Excel::load('file.xls', function ($reader) {
$reader->limitRows(20);
$reader->ignoreEmpty();
})->get()->toArray();
# remove empty rows
$data = array_filter($data);
答案 1 :(得分:0)
使用ToCollection方法将所有内容包装在if($row->filter()->isNotEmpty())
public function collection(Collection $rows)
{
foreach($rows as $row) {
if($row->filter()->isNotEmpty()){
// you logic can go here
$user = User::create([
'name' => ucwords($row['name']),
'class' => $row['class'],
...
]);
}
}
}