Skip to content

Instantly share code, notes, and snippets.

@madflow
Created May 10, 2016 20:23
Show Gist options
  • Save madflow/4e03fbcffa024be0a1773f7485c2d96b to your computer and use it in GitHub Desktop.
Save madflow/4e03fbcffa024be0a1773f7485c2d96b to your computer and use it in GitHub Desktop.
<?php
require_once __DIR__.'/vendor/autoload.php';
use Box\Spout\Writer\WriterFactory;
use Box\Spout\Reader\ReaderFactory;
use Box\Spout\Common\Type;
$rows = 2000;
$columns = 50;
if(!is_file('test.xlsx')) {
$writerXlsx = WriterFactory::create(Type::XLSX);
$writerXlsx->setShouldUseInlineStrings(false);
$writerXlsx->openToFile('test.xlsx');
for($r=1; $r<=$rows; $r+=1) {
$row=[];
for($c=1; $c<=$columns; $c+=1) {
$row[] = $c . '_' . uniqid();
}
$writerXlsx->addRow($row);
}
$writerXlsx->close();
}
$start = microtime(true);
ini_set('memory_limit', '800M');
$reader = ReaderFactory::create(Type::XLSX);
$reader->open('test.xlsx');
foreach ($reader->getSheetIterator() as $sheet) {
foreach ($sheet->getRowIterator() as $row) {}
}
$reader->close();
$end = microtime(true);
print $end-$start.' seconds '.PHP_EOL;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment