Laravel-excel: 有没有办法跳过第一行(标题)?

创建于 2019-05-02  ·  5评论  ·  资料来源: Maatwebsite/Laravel-Excel

版本

  • PHP 版本:7.2.17
  • Laravel 版本:5.8.15
  • 包版本:3.1

描述

有没有办法跳过标题行并从第二行开始导入?

喜欢:

class UsersImport implements ToModel
{
    /**
     * <strong i="13">@param</strong> array $row
     *
     * <strong i="14">@return</strong> User|null
     */
    public function model(array $row)
    {
        return new User([
           'name'     => $row[0],
           'email'    => $row[1], 
           'password' => Hash::make($row[2]),
        ]);
    }
}

但是从第二排开始呢? 所以我不必担心我的标题名称,只需担心我的列的顺序。

最有用的评论

我解决了

class UsersImport implements ToModel, WithStartRow
{
    ...

    /**
     * <strong i="6">@return</strong> int
     */
    public function startRow(): int
    {
        return 2;
    }
}

所有5条评论

我解决了

class UsersImport implements ToModel, WithStartRow
{
    ...

    /**
     * <strong i="6">@return</strong> int
     */
    public function startRow(): int
    {
        return 2;
    }
}

我知道你已经解决了这个问题,但有一个内置的方法来做到这一点: WithHeadingRow

我知道你已经解决了这个问题,但有一个内置的方法来做到这一点: WithHeadingRow

但是如果你使用WithHeadingRow你不能通过索引访问行项目

好的!

我知道已关闭,但如果您使用@lcardosozago的方法,请不要忘记添加:

use Maatwebsite\Excel\Concerns\WithStartRow;

此页面是否有帮助?
0 / 5 - 0 等级