完成值有时候遇到一些用户导入的表格里面不需要的空列是无穷多的,一下方法可以限制excel只读取到某列。不会因为各种各样的情况导致内存爆了中断业务。记录一下
先
use Illuminate\Database\Eloquent\Model;
然后
public function endColumn(): string
{
//从A读取到L列,后面的列不再读取
return 'L';
}
<?php
namespace App\Imports;
use App\Models\SettlementFileRow;
use Illuminate\Database\Eloquent\Model;
use Maatwebsite\Excel\Concerns\ToModel;
use Maatwebsite\Excel\Concerns\WithColumnLimit;
class SettlementFileImport implements ToModel, WithColumnLimit
{
public function model(array $row): array|Model|SettlementFileRow|null
{
return new SettlementFileRow($row);
}
public function endColumn(): string
{
//从A读取到L列,后面的列不再读取
return 'L';
}
}