Remova a Folha de Matriz Principal de Importação para Coleção ou Array no Laravel Excel do Pacote

0

Pergunta

Eu quero importar do Excel, mas apenas sobre a folha de índice[0], mas quando eu uso toCollection ou método toArray as linhas envolto em folha de índice de matriz:

Eu quero remover a embrulhado matriz principal, como fazer isso?

Aqui é o meu código:

Import.php

<?php

namespace App\Imports;

use Maatwebsite\Excel\Concerns\Importable;
use Maatwebsite\Excel\Concerns\SkipsEmptyRows;
use Maatwebsite\Excel\Concerns\WithCalculatedFormulas;
use Maatwebsite\Excel\Concerns\WithMultipleSheets;

class Import implements SkipsEmptyRows,
                        WithCalculatedFormulas,
                        WithMultipleSheets
{
    use Importable;

    /**
     * Select sheet by index and how they are
     * mapped to specific import object.
     *
     * @return array
     */
    public function sheets(): array
    {
        return [
            0 => new static(),
        ];
    }
}

Controlador:

$filePath = 'import-excel.xlsx';
$import = new Import();
$rows = $import->toCollection($filePath);

dd($rows->toArray());

Resultado Esperado:

[0] => Array(
    [0] => *Contact Name
    [1] => *Contact Email
    [2] => *Contact Address
)

[1] => Array (
    [0] => Talia Oktaviani S.Psi
    [1] => [email protected]
    [2] => Ds. Abdul No. 618 Tarakan 11408 KalU
)

Resultado Real:

Array(  <== ***I want remove this.***
    [0] => Array(  <== ***I want remove this.***
        [0] => Array(
            [0] => *Contact Name
            [1] => *Contact Email
            [2] => *Contact Address
        )

        [1] => Array (
            [0] => Talia Oktaviani S.Psi
            [1] => [email protected]
            [2] => Ds. Abdul No. 618 Tarakan 11408 KalU
        )
    )  <== ***I want remove this.***
)  <== ***I want remove this.***
arrays excel import laravel
2021-11-24 00:35:38
1

Melhor resposta

1

Você pode excluir se usar o colapso da função de

$filePath = 'import-excel.xlsx';
$import = new Import();
$rows = $import->toCollection($filePath)->collapse();

dd($rows->toArray());
2021-11-25 14:29:13

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................