iter8/builder

A wrapper for the PHP Excel library to help you quickly build reports

Maintainers

👁 yesdevnull

Package info

github.com/iter8-au/builder

pkg:composer/iter8/builder

Statistics

Installs: 15 057

Dependents: 1

Suggesters: 0

Stars: 1

Open Issues: 3

4.2.0 2026-02-21 09:37 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 45aa60527b77ed56ed85849203339b17e97989e4

excelreportsphpspreadsheet


README

A wrapper for the PHPExcel library to help you quickly build Excel reports.

Example Usage

$builder = new Builder(
 new \Builder\Builders\PhpSpreadsheet(),
 '/var/cache',
);

$reportArray = [
 'headers' => [
 'Column 1',
 'Column B',
 ],
 'rows' => [
 [
 'Some Data',
 'Some Other Data',
 ],
 [
 'Some Data 2',
 'Some Other Data 2',
 ],
 ],
];

$builder->setSheets($reportArray);

$builder->setCreator('Workflow');
$builder->setTitle('Day Report');
$builder->setSheetTitles(['Data']);
$builder->setDescription('The Workflow Day Report');
$builder->setFilename('Workflow-Day_Report_' . $startDate->format('d_m_Y'));

// use generate() to output headers and force file download.
$builder->generate();

// use generateExcel() to create the file.
$builder->generateExcel();

Development

Todo

  • Allow both caching when building a report as well as short term or perm-caching to a configured location.

Testing

Minimal tests can be performed with PHPUnit.

Unit Tests

composer tests or ./vendor/bin/phpunit

Code Coverage

composer coverage

These will be available in ./builder_coverage.