Download Sample Excel Workbooks
Use small, reproducible XLSX fixtures for reading, writing, formulas, multiple sheets, large-file streaming, and invalid-import examples.
Updated
What you will learn
- Run documentation examples against known workbook structures.
- Reproduce row, sheet, formula, validation, and large-file behavior.
- Separate library setup problems from source-workbook problems.
Choose a workbook#
Customers
First read, headers, booleans, dates, arrays, and columns.
- Sheets
- Customers
- Size
- 4 data rows
Multiple worksheets
Sheet discovery, active-sheet helpers, named selection, and worksheet fallback.
- Sheets
- Orders, Customers, Summary
- Size
- 3 worksheets
Sales report
Dates, formulas, summary sheets, numeric values, and report inspection.
- Sheets
- Sales, Summary
- Size
- 4 orders
Formulas and styles
Formula cells, cached values, merged headings, number formats, and styles.
- Sheets
- Invoice
- Size
- 4 line items
Invalid product import
Missing values, negative prices, invalid quantities, bad email, duplicate SKU, and unknown status.
- Sheets
- Products
- Size
- 7 source rows
Large-order fixture
Streaming, chunking, progress, limits, projection, and memory measurements.
- Sheets
- Orders
- Size
- 500 data rows
Copy a fixture into your project#
my-project/
├── vendor/
├── examples/
│ └── read-customers.php
└── storage/
└── samples/
└── customers.xlsx<?php
declare(strict_types=1);
require __DIR__ . '/../vendor/autoload.php';
use Mnb\PHPExcel\MnbExcel;
$path = __DIR__ . '/../storage/samples/customers.xlsx';
$rows = MnbExcel::read($path)
->sheet('Customers')
->withHeaderRow(1)
->toArray();
print_r($rows);Use fixtures as tests, not production templates#
Checksums for every fixture are included in sample-workbook-checksums.txt.