Agregar encabezados en Laravel Excel

Agregar encabezados en Laravel Excel

Agregar encabezados en Laravel Excel?. En Laravel es muy importante exportar información de base de dados en extensión de Excel. En tal sentido, aprenderemos a colocar encabezados con la función headings().

¿Cómo agregar encabezados en ficheros excel en Laravel Excel?

Básicamente, tenemos que agregar una función de nombre headings() y declarar las columnas a mostrar a la hora de exporta en excel. Ademas, de cumplir estos 3 pasos.

💣 Descarga sistemas PHP y Laravel COMPLETOS GRATIS
Recursos premium listos para usar en proyectos reales 💻
👥 +1000 desarrolladores · 🔥 Publicaciones diarias
🔥 Unirme al canal GRATIS ahora 👥 Grupo de Facebook
⏳ Enlaces disponibles por tiempo limitado
💻 Sistemas completos 🔌 Plugins PRO ⚡ Scripts listos 🔥 Recursos exclusivos

  • Declarar use Maatwebsite\Excel\Concerns\WithHeadings; en el encabezado de nuestro fichero de exportación
  • Agregar WithHeadings en nuestra clase de exportacion class ProductExport implements FromQuery, WithHeadings {}
  • Agregar la funcion heading()
    public function headings(): array
    {
    return ["name", "description", "details"];
    }

Nota:

Según la documentación, puede cambiar su clase para usar la interfaz WithHeadings y luego definir la función headers para devolver una matriz de encabezados de columna:

Ahora veamos la integración completa.

<?php
namespace App;
use Maatwebsite\Excel\Concerns\FromQuery;
use Maatwebsite\Excel\Concerns\WithHeadings;
class ProductExport implements FromQuery, WithHeadings
{
    use Exportable;
    public function __construct(int $id)
    {
        $this->id = $id;
    }
    public function query()
    {
        return Product::query()->where('id', $this->id);
    }
    public function headings(): array
    {
        return ["name", "description", "details"];
    }
}

Este modelo de integración funciona con todos los tipos de exportación (FromQuery, FromCollection, etc.)

Ejemplo 02: Agregar encabezados a exportación FromCollection

Es casi similar, veamos la diferencias,e sta vez usaremos query builder

<?php
namespace App\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
use DB;
class ProductExport implements FromCollection,WithHeadings
{
    public function collection()
    {
        $type = DB::table('products')->select('name', 'description','details')->get();
        return $type ;
    }
     public function headings(): array
    {
        return [
            'name',
            'description',
            'details'
        ];
    }
}

Espero que esto ayude para que puedan integrar encabezados en el paquete laravel-excel. Además, en un artículo anterior vimos como instalar este popular paquete.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.