php


Parsing file Excel from PHP


I have a function PHP to parse file Excel, it read all the number of the rows but it doesn't return all the data in the object.
Number of lines 3247, but it return just 1023 lines.
this following the parsing function:
public function parseEquipement($filePath = null) {
set_time_limit(0);
$listEquipement = [];
$count = 0;
$chunkSize = 8192;
$objReader = PHPExcel_IOFactory::createReader(PHPExcel_IOFactory::identify($filePath));
$spreadsheetInfo = $objReader->listWorksheetInfo($filePath);
$chunkFilter = new \Floose\Parse\ChunkReadFilter();
$objReader->setReadFilter($chunkFilter);
$objReader->setReadDataOnly(true);
$chunkFilter->setRows(0, 1);
$objPHPExcel = $objReader->load($filePath);
$totalRows = $spreadsheetInfo[0]['totalRows'];
for ($startRow = 1; $startRow <= $totalRows; $startRow += $chunkSize) {
$chunkFilter->setRows($startRow, $chunkSize);
$objPHPExcel = $objReader->load($filePath);
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null, null, true, false);
$startIndex = ($startRow == 1) ? $startRow : $startRow - 1;
if (!empty($sheetData) && $startRow < $totalRows) {
$dataToAnalyse = array_slice($sheetData, $startIndex, $chunkSize);
if($dataToAnalyse[0][0]==NULL){
break;
}
for ($i = 0; $i < $chunkSize; $i++) {
if ($dataToAnalyse[$i]['0'] != NULL) {
$listEquipement[] = new Article($dataToAnalyse[$i]['0'], '', $dataToAnalyse[$i]['1']);
$count++;
}
}
}
//echo($totalRows); // is best
//echo($count); // is wrong
//print_r($listEquipement);
$objPHPExcel->disconnectWorksheets();
unset($objPHPExcel, $sheetData);
}
return $listEquipement;
}
I changed all the code by this following but it doesn't work:
public function parseEquipment($filePath = null) {
$objReader = PHPExcel_IOFactory::createReader(PHPExcel_IOFactory::identify($filePath));
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load($filePath);
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
for ($row = 2; $row <= $highestRow; $row++){
echo $sheet->getCellByColumnAndRow(3, $row)->getCalculatedValue();
echo $sheet->getCellByColumnAndRow(4, $row)->getCalculatedValue();
echo $sheet->getCellByColumnAndRow(2,$row)->getCalculatedValue();
$listEquipement[] = new Article(
$sheet->getCellByColumnAndRow(3, $row)->getCalculatedValue(),
$sheet->getCellByColumnAndRow(4, $row)->getCalculatedValue(),
$sheet->getCellByColumnAndRow(2, $row)->getCalculatedValue()
);
}
}
And when I run my code always it display an error of memory size knowing that the size of my file is 81K and it display the number of lines in the same time.
Fatal Error: Allowed Memory Size of 134217728 Bytes Exhausted (Tried to allocate 54byte)
Could anyone be kind enough to guide and teach me how I should do my codes or can you suggest me another code to parsing a file Excel ?

Related Links

The php-mapscript does not work on Opensuse 13.1
CSV file column (empty string values to NULL)
Prevent encoding of existing HTML entities (convert & to & but not & to &amp;)
Dynamic link and post with php
How to decode PHP serialized Redis response with Golang
web.config not working in IIS8.0
Zend\Stdlib\Hydrator\ArraySerializable::extract expects the provided object to implement getArrayCopy()
Doctrine2: calling flush multiple times
mysqli_query not working in php despite correctly built query
How to get all coordinates of single country or state rather than only bounds?
My form in phpmailer() only allow send mails from a mail with own domain
How can I fix the HTTP Error 417 Expectation failed on Laravel's Homestead?
How to print a colorful echo with $_SESSION['username'] [closed]
Find first src in php string
Getting a id back from a datalist option form using php post.
PHP export csv file

Categories

HOME
google-chrome
spring-data
powerbi
mod-rewrite
operating-system
dry
celery
material-components
azure-data-lake
implicit-conversion
ag-grid
mithril.js
wagtail
angular2-template
mailing-list
nexus3
graphdb
sslhandshakeexception
powermock
sonata
trace32
pywinauto
android-contacts
robolectric
string-formatting
bazaar
error-logging
quartz.net
high-availability
crud
rust-cargo
advanced-filter
android-canvas
textmate2
pdfnet
spinner
microkernel
hdiv
spooler
julius-speech
realstudio
aws-kinesis-firehose
sequence-diagram
nslayoutconstraint
emf-compare
prefetch
gawk
petsc
ipywidgets
bigdecimal
okio
piping
node-glob
uibinder
adjacency-list
django-redis
pack
odesk
arbre
srv-record
android-studio-import
sqlbase
postal-code
deque
prism-4
innerhtml
mod-auth-openidc
nanomsg
uno
dos2unix
object-code
rpg
forio-contour
jomsocial
hints
android-authenticator
django-filebrowser
simplecov
xalan
jquery-dialog
image-formats
pcspim
libxslt
mygeneration
jdownloader
facebook-fbml
chronic

Resources

Encrypt Message



code
soft
python
ios
c
html
jquery
cloud
mobile