Como generar un archivo Excel en Cakephp 3

Para generar un archivo Excel desde Cakephp 3 es necesario que primero descarguemos la librería PHPExcel.

El contenido al descomprimir el archivo hay que colocarlo en la carpeta /vendor de nuestro proyecto.

Creamos una función ó acción en nuestro controlador para ejecutar la creación del archivo Excel. El controlador en este ejemplo se llama PrincipalController.php

Como notarán utilizo el layout de ajax porque no debe haber ningún tipo de impresión en pantalla, con eso me refiero a echo, print_r() o salidas html. Además agregamos un response de tipo spreadsheet que será transformado en un header que le indicará al navegador que lo que estamos generando es un archivo de Excel.

Ahora creamos nuestra vista que se llamará excel.ctp en la ruta /src/Template/Principal con el siguiente contenido.

Al ejecutar la url: http://misitio/principal/excel verémos el cuadro de diálogo del Excel generado.

cakephp3_excel

El resultado del código será así:

cakephp3_excel2

Con la librería hay muchos ejemplos en la carpeta Examples que pueden consultar para hacer reportes más elaborados.

Saludos.

3 comentarios

Deja un comentario