Laravel Packages

Lightweight Spreadsheets for Laravel

Published
Lightweight Spreadsheets for Laravel image

If you're looking for a lightweight package that can read and write spreadsheets, Chris Morrell's Linen package is a lightweight spreadsheet package for Laravel. This package is a wrapper for the openspout/openspout package which lets you read and write spreadsheets in a fast and scalable way.

Here are a few examples of how you can use the Linen package to read and write spreadsheets:

use Glhd\Linen\CsvReader;
use Glhd\Linen\ExcelReader;
 
$data = [
['user_id' => 1, 'name' => 'Chris', 'nullable' => null, 'number' => 40.2],
['user_id' => 10, 'name' => 'Bogdan', 'nullable' => 'not null', 'number' => -37],
];
 
// CSV
$collection = CsvReader::from('basic.csv')->collect();
$tempfile = CsvWriter::for($data)->writeToTemporaryFile();
 
// Excel
$collection = ExcelReader::from('basic.xlsx')->collect();
$tempfile = ExcelWriter::for($data)->writeToTemporaryFile();

Linen provides some conveniences on top of the Openspout package, such as using Laravel's LazyCollection class when reading spreadsheets. You can get started with this package by installing it via composer:

composer require glhd/linen

The readme and source code is available on GitHub at glhd/linen.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Validate and Convert HEIC Images in Laravel image

Validate and Convert HEIC Images in Laravel

Read article
Saga Lara Flow: Durable Workflows and Compensating Transactions on Laravel Queues image

Saga Lara Flow: Durable Workflows and Compensating Transactions on Laravel Queues

Read article
Reject Unexpected Array Keys with Laravel Validation image

Reject Unexpected Array Keys with Laravel Validation

Read article
Major performance improvements & security patches for Filament v4.12 and v5.7! image

Major performance improvements & security patches for Filament v4.12 and v5.7!

Read article
Laravel Boost Project Rules: Teach Agents Your Conventions image

Laravel Boost Project Rules: Teach Agents Your Conventions

Read article
Extract an Image's Dominant Color in Laravel image

Extract an Image's Dominant Color in Laravel

Read article