в файле много данных (170к строк)
пробовал уже и через фильтр по шагам, но падает непосредственно при $spreadsheet = $reader->load($inputFileName);
может кто что посоветует?
Либа говно и жрет память как не в себя, есть альтернативы - гугли
возьми box/stout
Box\Spout пробовал, тоже не вывозит
а сколько памяти у пыха?
выставляю в обработке ini_set("memory_limit","1024M");
https://github.com/PHPOffice/PhpSpreadsheet/issues/629#issuecomment-551517933
что-то странно .. учитывая что он обещает "Unlike other file readers or writers, it is capable of processing very large files, while keeping the memory usage really low (less than 3MB)." .. да и строк у Вас не очень то и много
что-то у меня этот вариант при первом подходе не завелся, попробую еще раз
я бы всё же взял бы Box\Spout .. который изначально по другому работает,а не такие костыли использовал
вот такой результат дает 170552 записей за 266.7235 сек.🙈
ну так до этого он же "но падает непосредственно".. результат уже лучше
может дело не в либе, может тормозит твой код, натрави xhprof и узнай где затык
наверное не правильно сказал "падает" - 504 была, запустил скрипт php riva_test.php - получил такой результат что за 266 сек
а.. ну тогда , вопрос к ресурсам .. эта либа очень прожорливая .. а насколько я видел ресурсов не так уж и много
да вроде бы spout не такой прожорливый
да код из примера как пользоваться, там все просто, жаль не поддерживается либа, гуглить нюансы буду
Обсуждают сегодня