akeneo/spreadsheet-parser

This package is abandoned and no longer maintained. The author suggests using the akeneo-labs/spreadsheet-parser package instead.

Akeneo Spreadsheet parser. Reads XLXS files from Microsoft Excel and Open Office

Maintainers

👁 akeneo
👁 Fitn

Package info

github.com/akeneo/spreadsheet-parser

Homepage

Issues

pkg:composer/akeneo/spreadsheet-parser

Statistics

Installs: 21 111

Dependents: 3

Suggesters: 0

Stars: 146

v1.3.0 2018-12-09 10:18 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

OSL-3.0 4be5fdae57363819dcd80e84ae875c6402213b1b

excelspreadsheetxlsxparserreaderakeneo


README

This component is designed to extract data from spreadsheets, while being easy on resources, even for large files.

The current version of the spreadsheet parser works with csv and xlsx files.

👁 Travis Build Status
👁 Scrutinizer Code Quality

Installing the package

From your application root:

 $ php composer.phar require --prefer-dist "akeneo-labs/spreadsheet-parser"

Usage

To extract data from an XLSX spreadsheet, use the following code:

 use Akeneo\Component\SpreadsheetParser\SpreadsheetParser;

 $workbook = SpreadsheetParser::open('myfile.xlsx');

 $myWorksheetIndex = $workbook->getWorksheetIndex('myworksheet');
 
 foreach ($workbook->createRowIterator($myWorksheetIndex) as $rowIndex => $values) {
 var_dump($rowIndex, $values);
 }

By using the CSV parser options, you can specify the format of your CSV file :

 use Akeneo\Component\SpreadsheetParser\SpreadsheetParser;

 $workbook = SpreadsheetParser::open('myfile.csv');

 $iterator = $workbook->createRowIterator(
 0,
 [
 'encoding' => 'UTF-8',
 'length' => null,
 'delimiter' => ',',
 'enclosure' => '"',
 'escape' => '\\'
 ]
 );
 
 
 foreach ($workbook->createRowIterator(0) as $rowIndex => $values) {
 var_dump($rowIndex, $values);
 }

Running the tests

To run unit tests, use phpspec:

 $ php bin/phpspec run

To run integration tests, use phpunit:

 $ phpunit