MNB PHPExcelDeveloper Guide
Reading workbooks

Read an XLSX Workbook

Open a workbook, inspect its sheets, and iterate through records with predictable headers.

Updated

LevelBeginnerReading time9 minPackagemnb/mnb-phpexcel
MnbExcel::read()ReadSession::sheetNames()ReadSession::activeSheet()ReadSession::rows()ReadSession::toArray()

What you will learn

  • Inspect available worksheets before selecting one.
  • Read rows with or without associative headers.
  • Choose a generator or collected array intentionally.

Inspect the workbook before reading data#

inspect-workbook.php
use Mnb\PHPExcel\Format\Xlsx;

$session = MnbExcel::read('orders.xlsx');

print_r($session->sheetNames());
print_r($session->activeSheetInfo());
print_r($session->inspect());

Read associative rows#

PHP
$orders = MnbExcel::read('orders.xlsx')
    ->sheet('Orders')
    ->withHeaderRow(1);

foreach ($orders->rows() as $row) {
    printf("%s — %0.2f\n", $row['Order ID'], $row['Amount']);
}

Read raw positional rows#

PHP
$rows = MnbExcel::read('matrix.xlsx')
    ->sheet(1)
    ->withoutHeaderRow()
    ->rows();

foreach ($rows as $row) {
    $firstCell = $row[0] ?? null;
}

Use positional rows for matrix-like documents. Use headers for business records because named keys survive column reordering more safely.

Collect only when the dataset is modest#

PHP
$rows = MnbExcel::read('small-reference.xlsx')
    ->sheet('Countries')
    ->withHeaderRow(1)
    ->toArray();