laravel-csv-export maintained by mrankitthapar
Laravel CSV Export
A simple Laravel package for exporting arrays, collections, and Eloquent query results to CSV files.
Requirements
- PHP 8.2+
- Laravel 11, 12 or 13
Installation
composer require mrankitthapar/laravel-csv-export
Publish configuration
php artisan vendor:publish --tag=csv-export-config
Basic usage
use MrAnkitThapar\LaravelCsvExport\Facades\CsvExport;
return CsvExport::download([
[
'id' => 1,
'name' => 'Ankit',
'email' => 'ankit@example.com',
],
], 'users.csv');
Export an Eloquent collection
use MrAnkitThapar\LaravelCsvExport\Facades\CsvExport;
use App\Models\User;
return CsvExport::download(
User::query()
->select('id', 'name', 'email')
->get(),
'users.csv'
);
Custom headers
return CsvExport::download(
data: $users,
filename: 'users.csv',
headers: [
'User ID',
'Full Name',
'Email Address',
]
);
Save to storage
CsvExport::store(
data: $users,
path: 'exports/users.csv',
disk: 'local'
);
Get CSV as a string
$csv = CsvExport::toString($users);
Testing
composer test
License
MIT