1. Productos
  2.   Hoja de cálculo
  3.   PHP
  4.   Fast-Excel
 
  

Importar y exportar archivos Excel, CSV y ODS mediante una biblioteca PHP gratuita

API PHP de código abierto que permite a los desarrolladores de software importar y exportar archivos MS Excel. Conozca sus características, beneficios y ejemplos de código para manejar grandes conjuntos de datos de manera eficiente.

¿Qué es Fast-Excel?

Fast-Excel es un paquete PHP liviano diseñado para simplificar las operaciones de importación/exportación de Excel y CSV en aplicaciones Laravel. Construido sobre OpenSpout, se centra en la velocidad, bajo consumo de memoria y una sintaxis amigable para los desarrolladores. A diferencia de bibliotecas de hojas de cálculo más pesadas, Fast-Excel es ideal para proyectos que necesitan un manejo de hojas de cálculo simple y eficiente sin complejidad innecesaria. Soporta la exportación e importación de archivos XLSX, CSV y ODS mientras mantiene un consumo de memoria sorprendentemente bajo.

Fast-Excel es particularmente útil para los desarrolladores que necesitan procesar archivos grandes de Excel, CSV o ODS sin encontrarse con limitaciones de memoria. Las bibliotecas tradicionales a menudo cargan conjuntos de datos completos en la memoria, pero Fast-Excel utiliza técnicas de transmisión para manejar los datos de manera eficiente. La biblioteca se usa ampliamente para exportar registros de bases de datos a hojas de cálculo, importar datos de usuarios o informes, generar informes grandes de forma dinámica, simplificar el manejo de Excel en aplicaciones Laravel, entre otros. Con su API limpia y configuración mínima, Fast-Excel reduce el tiempo de desarrollo mientras mejora el rendimiento.

Previous Next

Comenzando con Fast-Excel

La forma recomendada de instalar Fast-Excel en su proyecto es mediante Composer. Por favor, use el siguiente comando para una instalación sin problemas

Instalar Fast-Excel via Composer

 composer require rap2hpoutre/fast-excel

También puede clonar el proyecto con Git ejecutando

Exportar colecciones a archivos Excel mediante PHP

Fast-Excel hace que exportar colecciones o modelos a Excel sea increíblemente sencillo. Con solo unas pocas líneas de código, puedes generar archivos .xlsx, .csv o .ods. Esta característica elimina el código repetitivo y acelera el desarrollo, especialmente para paneles de control o sistemas de informes. El siguiente ejemplo muestra cómo Exportar datos a un archivo MS Excel XLSX usando código PHP. La biblioteca convierte una colección de Laravel directamente en un archivo Excel sin requerir configuraciones complejas.

¿Cómo exportar datos a un archivo Excel XLSX mediante una biblioteca PHP?

use Rap2hpoutre\FastExcel\FastExcel;
// Sample data
$list = collect([
    ['id' => 1, 'name' => 'Jane'],
    ['id' => 2, 'name' => 'John'],
]);
// Export to Excel
(new FastExcel($list))->export('users.xlsx');

Exportaciones fragmentadas de bajo consumo de memoria usando generadores

La biblioteca de código abierto Fast-Excel incluye soporte para bajo consumo de memoria y una sintaxis simple para importar o exportar datos. Esta es la característica principal para manejar \"big data\". En lugar de cargar 1 millón de usuarios en un array, utilizas cursor() de Laravel o un generador personalizado con yield. El exportador procesa cada fila una por una, la escribe en el archivo y la descarta de la memoria. Esto mantiene el uso de memoria constante (muy bajo) sin importar si estás exportando 100 filas o 10 millones de filas.

¿Cómo exportar campos específicos con encabezados personalizados en aplicaciones PHP?

return (new FastExcel(User::all()))->export('formatted_users.xlsx', function ($user) {
    return [
        'Full Name' => $user->firstname . ' ' . $user->lastname,
        'Email Address' => $user->email,
        'Member Since' => $user->created_at->format('Y-m-d'),
        'Status' => $user->is_active ? 'Active' : 'Suspended'
    ];
});

Importar datos directamente a la base de datos

En lugar de importar filas manualmente, Fast-Excel puede procesar cada fila e insertarla directamente en su base de datos. Esto es ideal para cargas masivas de administrador y tiene grandes beneficios como inserción masiva en la base de datos, código más limpio, menos procesamiento manual, flujos de trabajo administrativos fáciles, etc. Es particularmente útil para sistemas de recursos humanos, CRM y plataformas de comercio electrónico. Aquí hay un ejemplo útil que muestra cómo importar datos a una base de datos dentro de aplicaciones PHP.

¿Cómo importar datos directamente a una base de datos mediante una biblioteca PHP?

use Rap2hpoutre\FastExcel\FastExcel;
use App\Models\User;

(new FastExcel)->import('users.xlsx', function ($line) {
    return User::create([
        'name' => $line['Name'],
        'email' => $line['Email'],
    ]);
});

Mapeo y formato de columnas personalizados mediante PHP

Las columnas de la base de datos no siempre son legibles para los humanos. La biblioteca Fast-Excel ha incluido soporte completo para el mapeo y formateo personalizados de columnas o filas. Esta función le permite definir exactamente qué atributos exportar y reformatear sus valores al instante. Ya sea que necesite convertir a mayúsculas un apellido, combinar nombres y apellidos, o renombrar ‘user_id’ a ‘Identificador de Empleado’, el cierre le brinda control total sobre el arreglo de salida final.

 Español