Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Excel Bundle

Excel Bundle Laravel Package

os/excel-bundle

OS Excel Bundle integrates PHPExcel with Symfony to simplify reading, writing, and exporting Excel spreadsheets. Generate reports, stream downloads, and handle common spreadsheet formats from controllers and services with minimal configuration and boilerplate.

View on GitHub
Deep Wiki
Context7

Excel Reader Bundle for symfony2

Frequently asked questions about Excel Bundle
Is os/excel-bundle compatible with Laravel?
No. os/excel-bundle is a Symfony2 bundle, not a Laravel package, and its architecture assumes AppKernel registration, DependencyInjection extension classes, and XML or YAML service definitions. Laravel's container and package auto-discovery cannot consume any of that. There is no service provider, no facade, and no publishable configuration file, so treating it as a drop-in Laravel dependency is a category error. At best it serves as a reference implementation for spreadsheet handling logic.
Can I install os/excel-bundle with Composer in a Laravel application?
You can run composer require, but the install will likely fail or force awkward version-constraint gymnastics on a modern Laravel stack running PHP 8.x with Composer 2. The bundle targets Symfony2, which is end-of-life, and it almost certainly pins PHPExcel, the abandoned predecessor to PhpSpreadsheet. Even if the install succeeds, Laravel will not load or wire any of the bundle's services. A successful composer install here does not mean a working integration.
What Laravel package should I use instead of os/excel-bundle for Excel import and export?
Use maatwebsite/excel, which is an actively maintained Laravel wrapper over PhpSpreadsheet and ships with a service provider, facade, publishable config, queue support, and chunked reads. If you need lower-level control over cell formatting or streaming, use PhpSpreadsheet directly. Either option gives you the same functional outcome as the bundle with maintained dependencies and a supported upgrade path. Recommending os/excel-bundle for a Laravel stack would only create a bespoke shim layer your team has to maintain.
Does os/excel-bundle use PHPExcel or PhpSpreadsheet?
The bundle appears to wrap PHPExcel, the abandoned predecessor to PhpSpreadsheet, based on its Symfony2-era provenance. PHPExcel is no longer maintained and carries known CVEs plus unpatched behavior changes, so any code you inherit from it inherits those risks. Confirm by reading the composer.json constraints and the source imports before assuming any of the writer or reader logic is salvageable. This single fact determines whether an extraction effort is worthwhile at all.
Will os/excel-bundle run on PHP 8?
Assume it will not until proven otherwise. PHPExcel-era code frequently relies on deprecated functions such as each() and dynamic properties that fatal on PHP 8, and Symfony2 conventions are a decade stale. There is no supported path to running this bundle alongside a modern Laravel application without forking and rewriting it, which defeats the purpose of adopting a package. If you must proceed, spike the extraction in a throwaway branch and prove PHP 8 compatibility before touching your main application.
How do I register os/excel-bundle in Laravel's service container?
You cannot register it the way you would a Laravel package, because there is no ServiceProvider class to add to your providers array. The bundle expects Symfony's AppKernel and DependencyInjection extension mechanism instead. Any adoption path is manual: read the source, extract the import and export logic, and reimplement it as native Laravel services bound through your own provider. At that point you are no longer consuming the package.
Is os/excel-bundle safe to use in production?
The technical risk is high. The repository has around 11 stars, zero dependents, a single maintainer, and no evidence of CI, tests, or recent releases, and a zero-dependent package in the PHP ecosystem strongly signals that no production system trusts it. The lack of a README-driven usage contract or semantic versioning history makes upgrade planning speculative. Combined with the PHPExcel dependency, that is not a foundation for production reporting or export features.
How do I migrate Excel logic from os/excel-bundle to a Laravel application?
Do not attempt a composer require. Instead, clone the repository and read the source to understand the export and import contract it exposed, including column mapping, cell formatting, and streaming behavior. Then reimplement equivalent functionality as Laravel services using PhpSpreadsheet, preserving the business rules you extracted. If the bundle's only unique value is a specific template format, version that template as a test fixture and validate the replacement against it, which converts an unmaintainable dependency into a bounded one-time task.
Does os/excel-bundle support streamed downloads and large file chunked reads?
The blurb claims it simplifies reading, writing, and exporting spreadsheets with streamed download support, but there is no README-driven usage contract or test suite demonstrating it. Any streaming behavior it exposes is tied to PHPExcel and Symfony2 response handling rather than Laravel responses. If streaming large exports matters to you, maatwebsite/excel and PhpSpreadsheet provide documented, maintained streaming and chunked-read APIs. Verify real behavior against fixture files before relying on the bundle's claims.
Is it worth forking os/excel-bundle instead of rewriting the functionality?
Usually not. Forking means inheriting PHPExcel's CVEs, rewriting Symfony2 service wiring for Laravel, and proving PHP 8 compatibility, all to arrive at something maatwebsite/excel already provides. The safer sequencing is to build the PhpSpreadsheet replacement first, then compare its output against the bundle's for parity. If a fork is unavoidable, isolate any vendored code behind an interface so it can be swapped, and gate the merge on tests using real fixture files.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource