如何删除laravel excel中的空行?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除laravel excel中的空行?相关的知识,希望对你有一定的参考价值。

所以我使用Laravel,我使用Laravel excel加载excel / csv文件,但我的文件包含空行,我想删除每一个空行。

这是我的代码:

Excel::selectSheetsByIndex(0)->load($path, function($reader){
       $results = $reader->noHeading()->toArray();
         foreach ($results as $row) {
            //my code
         }
       }, 'UTF-8');

所以,如果有人知道我怎么做,我将非常感激

答案

我想你可以这样做

/** @var LaravelExcelReader $data */
        $data = Excel::load('file.xls', function ($reader) {
            $reader->limitRows(20);
            $reader->ignoreEmpty();
        })->get()->toArray();

        # remove empty rows
        $data = array_filter($data);
另一答案

使用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'],
                    ...
                ]);
            }
        }   
       }

以上是关于如何删除laravel excel中的空行?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 DataTable 中删除空行

如何将数据复制到空行然后在Excel中删除原始

如何判断Excel中是不是有空行

如何在excel里批量删除空白行列?

java jxl 读取excel时读取了很多空行 求解决办法

Notepad++怎么删除空行