Laravel-excel: Есть ли способ пропустить первую строку (заголовок)?

Созданный на 2 мая 2019  ·  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 рейтинги