PHP解析大型Excel表格的库、导入(百万级)Excel表格数据

PHP解析大型Excel表格的库:box/spout

简介

PHP解析Excel有个比较有名的库是phpoffice/phpexcel。在实际使用的过程中,解析一两百行的Excel没有问题,遇到上万行的Excel时,phpexcel的内存使用量会飙升,很容易就能超过128M甚至更多。 
今天我来介绍另一个高效解析Excel的PHP库box/spout,地址:
GitHub - box/spout: Read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way
看官方介绍是:Read and write spreadsheet files in a fast and scalable way,可见这个库在解析Excel时,Excel文件的大小不会太影响内存的使用量。可以说是PHPExcel一种替代方案。
由于box/spout库的Github主页上的文档链接已经挂了,这里简单写了一个XLSX文件转化成CSV的例子:

include 'vendor/autoload.php';
use Box\Spout\Reader\ReaderFactory;
use Box\Spout\Common\Type;

$t = time();
$reader = ReaderFactory::create(Type::XLSX);
//如果注释掉,单元格内的日期类型将会是DateTime,不注释的话Spout自动帮你将日期转化成string
//

你可能感兴趣的:(excel,php)