Skip to content
This repository has been archived by the owner on May 26, 2022. It is now read-only.


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time
January 25, 2022 14:29
May 26, 2022 15:49
May 26, 2022 15:49
April 14, 2015 20:16
January 15, 2015 18:14
January 15, 2015 18:14
January 23, 2022 15:21
January 13, 2022 23:04


Latest Stable Version Project Status example workflow Coverage Status Total Downloads

🪦 Archived project 🪦

This project has been archived and is no longer maintained. No bug fix and no additional features will be added.
You won't be able to submit new issues or pull requests, and no additional features will be added

You can still use Spout as is in your projects though :)

Thanks to everyone who contributed to this project, from a typo fix to the new cool feature.
It was great to see the involvement of this community!


Spout is a PHP library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way. Unlike other file readers or writers, it is capable of processing very large files, while keeping the memory usage really low (less than 3MB).

Join the community and come discuss Spout: Gitter


Full documentation can be found at


  • PHP version 7.2 or higher
  • PHP extension php_zip enabled
  • PHP extension php_xmlreader enabled

Upgrade guide

Version 3 introduced new functionality but also some breaking changes. If you want to upgrade your Spout codebase from version 2 please consult the Upgrade guide.

Running tests

The master branch includes unit, functional and performance tests. If you just want to check that everything is working as expected, executing the unit and functional tests is enough.

  • phpunit - runs unit and functional tests
  • phpunit --group perf-tests - only runs the performance tests

For information, the performance tests take about 10 minutes to run (processing 1 million rows files is not a quick thing).


Spout is no longer actively supported. You can still ask questions, or discuss about it in the chat room:

Copyright 2022 Box, Inc. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.