Importa ed esporta file Excel, CSV e ODS tramite la libreria PHP gratuita
API PHP open source che consente agli sviluppatori di software di importare ed esportare file MS Excel. Scopri le sue funzionalità, i vantaggi e gli esempi di codice per gestire grandi set di dati in modo efficiente.
Che cos'è Fast-Excel?
Fast-Excel è un pacchetto PHP leggero progettato per semplificare le operazioni di import/export di Excel e CSV nelle applicazioni Laravel. Basato su OpenSpout, si concentra su velocità, basso consumo di memoria e sintassi orientata allo sviluppatore. A differenza delle librerie di fogli di calcolo più pesanti, Fast-Excel è ideale per progetti che necessitano di una gestione semplice ed efficiente dei fogli di calcolo senza complessità inutili. Supporta l'esportazione e l'importazione di file XLSX, CSV e ODS mantenendo un consumo di memoria sorprendentemente basso.
Fast-Excel è particolarmente utile per gli sviluppatori che devono elaborare grandi file Excel, CSV o ODS senza incorrere in limitazioni di memoria. Le librerie tradizionali spesso caricano interi set di dati in memoria, ma Fast-Excel utilizza tecniche di streaming per gestire i dati in modo efficiente. La libreria è ampiamente usata per esportare record di database in fogli di calcolo, importare dati o report degli utenti, generare grandi report dinamicamente, semplificare la gestione di Excel nelle app Laravel e così via. Con la sua API pulita e una configurazione minima, Fast-Excel riduce i tempi di sviluppo migliorando le prestazioni.
Iniziare con Fast-Excel
Il modo consigliato per installare Fast-Excel nel tuo progetto è utilizzare Composer. Per favore usa il comando seguente per un'installazione senza problemi.
Installa Fast-Excel via Composer
composer require rap2hpoutre/fast-excelPuoi anche clonare il progetto con Git eseguendo
Esporta collezioni in file Excel tramite PHP
Fast-Excel rende l'esportazione di collezioni o modelli in Excel incredibilmente semplice. Con poche righe di codice, è possibile generare file .xlsx, .csv o .ods. Questa funzionalità elimina il codice boilerplate e accelera lo sviluppo, soprattutto per dashboard o sistemi di reporting. L'esempio seguente dimostra come esportare i dati in un file MS Excel XLSX utilizzando codice PHP. La libreria converte direttamente una collezione Laravel in un file Excel senza richiedere configurazioni complesse.
Come esportare i dati in un file Excel XLSX tramite una libreria 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');
Esportazioni a blocchi a consumo di memoria efficiente usando i generatori
La libreria open source Fast-Excel include il supporto per un basso utilizzo di memoria e una sintassi semplice per l'importazione o l'esportazione dei dati. Questa è la funzionalità di punta per la gestione del \"big data\". Invece di caricare 1 milione di utenti in un array, si utilizza cursor() di Laravel o un generatore custom yield. L'esportatore elabora ogni riga una alla volta, la scrive nel file e la elimina dalla memoria. Questo mantiene l'utilizzo della memoria costante (molto basso) indipendentemente dal fatto che si stiano esportando 100 righe o 10 milioni di righe.
Come esportare campi specifici con intestazioni personalizzate nelle applicazioni 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'
];
});
Importa dati direttamente nel database
Invece di importare le righe manualmente, Fast-Excel può elaborare ogni riga e inserirla direttamente nel tuo database. È ideale per caricamenti massivi da parte dell'amministratore e offre grandi vantaggi come inserimento massivo nel database, codice più pulito, meno elaborazione manuale, flussi di lavoro amministrativi facili e così via. È particolarmente utile per sistemi HR, CRM e piattaforme eCommerce. Ecco un esempio utile che mostra come importare dati in un database all'interno di applicazioni PHP.
Come importare i dati direttamente in un database tramite una libreria 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'],
]);
});
Mappatura e formattazione personalizzate delle colonne tramite PHP
Le colonne del database non sono sempre leggibili dall'uomo. La libreria Fast-Excel ha incluso il supporto completo per la mappatura e la formattazione personalizzate di colonne o righe. Questa funzionalità ti permette di definire esattamente quali attributi esportare e riformattare i loro valori al volo. Che tu debba trasformare in maiuscolo un cognome, combinare nome e cognome, o rinominare ‘user_id’ in ‘Identificatore Dipendente’, la closure ti offre il pieno controllo sull'array di output finale.