disalvo / spreadsheet-parser
增强型 Akeneo 电子表格解析器。可读取来自 Microsoft Excel 和 Open Office 的 XLXS 文件
v1.2.3
2017-09-27 18:41 UTC
Requires
- php: >=5.4.0
- symfony/options-resolver: ~2.6 || ~3.0
Requires (Dev)
- phpspec/phpspec: ~2.0
README
该组件旨在从电子表格中提取数据,同时占用资源较少,即使是对于大文件也是如此。
当前版本的电子表格解析器支持 csv 和 xlsx 文件。
安装包
从应用程序根目录
$ php composer.phar require --prefer-dist "disalvo/spreadsheet-parser"
使用方法
要从 XLSX 电子表格中提取数据,请使用以下代码
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); }
通过使用 CSV 解析器选项,您可以指定 CSV 文件的格式
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); }
运行测试
要运行单元测试,请使用 phpspec
$ php bin/phpspec run
要运行集成测试,请使用 phpunit
$ phpunit