Je tente d'importer un fichier csv à l'aide de PHPExcel dans mon application afin de pouvoir charger les données dans une table. Lorsque le fichier atteint 2 méga + le code échoue.Echec de la lecture du fichier CSV grand format PHPExcel
Je cours Laravel sur WAMP64. Le code qui échoue est:
$objPHPExcel = PHPExcel_IOFactory::load(Input::file('file')->getRealPath());
Le message d'erreur est:
ErrorException: file_get_contents(C:\wamp\www\imax\public): failed to open stream: Permission denied in C:\wamp\www\imax\vendor\phpoffice\phpexcel\Classes\PHPExcel\Shared\OLERead.php:85
Je sais qu'il est un problème de taille car le code est bien passé lorsque le fichier est 2048K. Je peux ajouter un caractère au fichier en le poussant à 2049K et il échoue. Ce n'est donc pas un problème d'autorisations.
La ligne qui échoue dans OLERead.php est:
// Get the file identifier
// Don't bother reading the whole file until we know it's a valid OLE file
$this->data = file_get_contents($sFileName, FALSE, NULL, 0, 8);
Wampserver 3.0.6
PHP 7.0.10
Avez-vous essayé uping la 'memory_limit' dans le php.ini fichier? Il y a aussi une ligne de timeout et d'autres que je voudrais 'up' mais je ne peux pas me souvenir d'un coup de main. Cela peut être utile: https://stackoverflow.com/questions/3829403/how-to-increase-the-execution-timeout-in-php – Radmation
La limite de mémoire était de 512M. Doublé après avoir découvert l'erreur, pas de changement. – JEberlan