Skip to content

Instantly share code, notes, and snippets.

@pqr
Last active December 12, 2019 07:36
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pqr/ad12493947e7b1e2910f to your computer and use it in GitHub Desktop.
Save pqr/ad12493947e7b1e2910f to your computer and use it in GitHub Desktop.
optimized example for http://habrahabr.ru/post/269051/
<?php
require 'vendor/autoload.php';
$callStartTime = microtime(true);
$filename = "multipage.xls";
$objReader = PHPExcel_IOFactory::createReaderForFile($filename);
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load($filename);;
$sheetsIterator = $objPHPExcel->getWorksheetIterator();
$tmpFileName = microtime(true);
// Creating CSV writer Object and save data to file
$objWriter = new PHPExcel_Writer_CSV($objPHPExcel);
while( $sheetsIterator->valid()) {
$objWriter->setSheetIndex($sheetsIterator->key());
$currentTmpFileName = "{$tmpFileName}_sheet_{$sheetsIterator->key()}.csv";
$objWriter->save($currentTmpFileName);
$sheetsIterator->next();
}
$callEndTime = microtime(true);
$callTime = $callEndTime - $callStartTime;
echo "\n" . $callTime . "\n";
@ionstudio
Copy link

nice!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment