PHPackages                             slam/php-spreadsheet-helper - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. slam/php-spreadsheet-helper

AbandonedArchivedLibrary[Utility &amp; Helpers](/categories/utility)

slam/php-spreadsheet-helper
===========================

PhpSpreadsheet helper to create organized data table

v0.2.2(4y ago)12461MITPHPPHP ~8.1.0

Since Feb 21Pushed 4y ago1 watchersCompare

[ Source](https://github.com/Slamdunk/php-spreadsheet-helper)[ Packagist](https://packagist.org/packages/slam/php-spreadsheet-helper)[ Fund](https://paypal.me/filippotessarotto)[ GitHub Sponsors](https://github.com/Slamdunk)[ RSS](/packages/slam-php-spreadsheet-helper/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (7)Dependencies (7)Versions (10)Used By (0)

Slam PhpSpreadsheet helper to create organized data table
=========================================================

[](#slam-phpspreadsheet-helper-to-create-organized-data-table)

[![Latest Stable Version](https://camo.githubusercontent.com/e15bdd6c06801832236725e1b66da2df7cb9c599e9a10b70af588760660943ee/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f736c616d2f7068702d73707265616473686565742d68656c7065722e737667)](https://packagist.org/packages/slam/php-spreadsheet-helper)[![Downloads](https://camo.githubusercontent.com/80eb9f181ab094ad549e66a4cdeae2e91663d2ffba6913aa04d90c24bde6c66d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f736c616d2f7068702d73707265616473686565742d68656c7065722e737667)](https://packagist.org/packages/slam/php-spreadsheet-helper)[![Integrate](https://github.com/Slamdunk/php-spreadsheet-helper/workflows/Integrate/badge.svg?branch=master)](https://github.com/Slamdunk/php-spreadsheet-helper/actions)[![Code Coverage](https://camo.githubusercontent.com/c87b8e75b599cfc8545994ad181c877cd7261cac34301044603a6b9d0a025b08/68747470733a2f2f636f6465636f762e696f2f67682f536c616d64756e6b2f7068702d73707265616473686565742d68656c7065722f636f7665726167652e7376673f6272616e63683d6d6173746572)](https://codecov.io/gh/Slamdunk/php-spreadsheet-helper?branch=master)[![Infection MSI](https://camo.githubusercontent.com/903cd59cbb8f03657354b57b031925cb0c25f6aa9814f90923dbaae48b9a9b51/68747470733a2f2f62616467652e737472796b65722d6d757461746f722e696f2f6769746875622e636f6d2f536c616d64756e6b2f7068702d73707265616473686565742d68656c7065722f6d6173746572)](https://dashboard.stryker-mutator.io/reports/github.com/Slamdunk/php-spreadsheet-helper/master)

Installation
------------

[](#installation)

`composer require slam/php-spreadsheet-helper`

Usage
-----

[](#usage)

```
use Slam\PhpSpreadsheetHelper as ExcelHelper;

require __DIR__ . '/vendor/autoload.php';

// Being an `iterable`, the data can be any dinamically generated content
// for example a PDOStatement set on unbuffered query
$users = [
    [
        'column_1' => 'John',
        'column_2' => '123.45',
        'column_3' => '2017-05-08',
    ],
    [
        'column_1' => 'Mary',
        'column_2' => '4321.09',
        'column_3' => '2018-05-08',
    ],
];

$columnCollection = new ExcelHelper\ColumnCollection(...[
    new ExcelHelper\Column('column_1',  'User',     10,     new ExcelHelper\CellStyle\Text()),
    new ExcelHelper\Column('column_2',  'Amount',   15,     new ExcelHelper\CellStyle\Amount()),
    new ExcelHelper\Column('column_3',  'Date',     15,     new ExcelHelper\CellStyle\Date()),
]);

$spreadsheet = new PhpOffice\PhpSpreadsheet\Spreadsheet();

$activeSheet = $spreadsheet->getActiveSheet();
$activeSheet->setTitle('My Users');
$table = new ExcelHelper\Table($activeSheet, 1, 1, 'My Heading', $users);
$table->setColumnCollection($columnCollection);

(new ExcelHelper\TableWriter())->writeTableToWorksheet($table);
(new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet))->save(__DIR__.'/test.xlsx');
```

Result:

[![Example](https://raw.githubusercontent.com/Slamdunk/php-spreadsheet-helper/master/example.png)](https://raw.githubusercontent.com/Slamdunk/php-spreadsheet-helper/master/example.png)

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 75.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

7

Last Release

1542d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/50348?v=4)[Sahn Lam](/maintainers/Slam)[@slam](https://github.com/slam)

---

Top Contributors

[![Slamdunk](https://avatars.githubusercontent.com/u/152236?v=4)](https://github.com/Slamdunk "Slamdunk (22 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (7 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/slam-php-spreadsheet-helper/health.svg)

```
[![Health](https://phpackages.com/badges/slam-php-spreadsheet-helper/health.svg)](https://phpackages.com/packages/slam-php-spreadsheet-helper)
```

###  Alternatives

[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

728272.9k20](/packages/civicrm-civicrm-core)[in2code/powermail

Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of features

982.5M38](/packages/in2code-powermail)[blair2004/nexopos

The Free Modern Point Of Sale System build with Laravel, TailwindCSS and Vue.js.

1.2k2.3k](/packages/blair2004-nexopos)[solspace/craft-freeform

The most flexible and user-friendly form building plugin!

52664.9k12](/packages/solspace-craft-freeform)[pimcore/data-importer

Adds a comprehensive import functionality to Pimcore Datahub

44763.4k2](/packages/pimcore-data-importer)[portphp/spreadsheet

PhpSpreadsheet reader and writer for Port

14796.4k4](/packages/portphp-spreadsheet)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
