Начитался хуйни на хабре
и решил запустить скрипт
require_once './Classes/PHPExcel/IOFactory.php';
class chunkReadFilter implements PHPExcel_Reader_IReadFilter
{
private $_startRow = 0;
private $_endRow = 0;
public function setRows($startRow, $chunkSize) {
$this->_startRow = $startRow;
$this->_endRow = $startRow + $chunkSize;
}
public function readCell($column, $row, $worksheetName = '') {
if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) {
return true;
}
return false;
}
}
session_start();
$fileName = 'file.xlsx';
if ($_SESSION['startRow']) $startRow = $_SESSION['startRow'];
else $startRow = 13;
//$inputFileType = 'Excel5';
$inputFileType = 'Excel2007';
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$chunkSize = 20;
$chunkFilter = new chunkReadFilter();
while ($startRow <= 65000) {
$chunkFilter->setRows($startRow,$chunkSize);
$objReader->setReadFilter($chunkFilter);
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load($fileName);
//Что-то с этими строками делаем
$startRow += $chunkSize;
$_SESSION['startRow'] = $startRow;
unset($objReader);
unset($objPHPExcel);
}
echo "The End";
unset($_SESSION['startRow']);
А оно ругается на
Notice: Undefined variable: objReader in /var/www/!!!!/data/www/!!!!/excel_reader.php on line 44 Fatal error: Call to a member function setReadFilter() on a non-object in /var/www/!!!/data/www/!!!!/excel_reader.php on line 44
Смотрю в код, вроде все ровно, а как запустить хз, мож кто подскажет где туплю
PHPExcel и большие файлы
PHPExcel — отличная библиотека с огромным функционалом по работе с форматами xls, xlsx. Можно считывать, записывать, менять форматирование, задавать ф
habrahabr.ru