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

Symfony Class Not Found Exception in Laravel Auditing (5)
groupBy within withCount closure (Laravel 5.3.26)
Use multiple name for an input type
How to review changes before making a record go live. Laravel, PHP
Adding “Related Products” to a custom tab in WooCommerce
Other files than php files not being processed; php-fpm
File request returns error 500
Display Banner after mysql first result
spl_autoload_register couldn't get “use” namespace
How do I retrieve an array value created in a PHP function?
Add space before question mark and exclamation mark
Set timezone according to different country locale wise in php
WordPress: Ajax response overwrites the whole page
PHP file temporarily unavailable
Simplified anarchy “if statement”
swift 3: Get rtf formatted text from MySQL

Categories

HOME
webview
magento2
tomcat
swi-prolog
vsts-build
lvm
ontology
azure-data-lake
timber
mailing-list
elastic-load-balancer
spring-amqp
responsivevoice
smartgwt
google-awareness
bnf
google-sites
psql
raml
neo4j.rb
kamailio
multi-upload
substring
ava
perfino
react-dnd
points
microsoft-certifications
ms-media-foundation
amazon-kms
keyboard-layout
stackpanel
forms-authentication
android-n
spring-restcontroller
icecast
scala-breeze
photoswipe
hibernate-ogm
amazon-elastic-beanstalk
spring.net
scala-collections
mobile-angular-ui
dblink
carmen
tsqlt
msbuild-4.0
openseadragon
qtcpsocket
noclassdeffounderror
mnesia
as3-api
onepage-checkout
management-studio-express
gdl
place
dsa
knife
supercomputers
cache-manifest
flow-js
mgwt
subview
mod-auth-openidc
juttle
vs-unit-testing-framework
ildasm
zend-mail
inequality
tabris
back
osascript
two.js
csslint
meteorite
proxy-server
spring-security-acl
.net-remoting
unicoins
eager-loading
ofstream
dojo-1.9
clrprofiler
prefuse
uipangesturerecognizer
acpi
net-use
database-deadlocks
nsrangeexception
fork-join
kext
principles
gtktextview
server-load
rootkit

Resources

Mobile Apps Dev
Database Users
javascript
java
csharp
php
android
MS Developer
developer works
python
ios
c
html
jquery
RDBMS discuss
Cloud Virtualization
Database Dev&Adm
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App