Я пытаюсь читать, 17 МБ превосходят файл (2003) с PHPExcel1.7.3c, но он уже сокрушает при загрузке файла после превышения предела этих 120 секунд, который я имею. Есть ли другая библиотека, которая может сделать это более эффективно? У меня нет потребности в моделировании, мне только нужно оно для поддержки UTF8.Спасибо за помощь
Размер файла не является хорошей мерой при использовании PHPExcel, более важно получить некоторое представление о количестве ячеек (rowsxcolumns) на каждом листе.
Если вам не нужно стилизовать, вы вызываете:
$objReader->setReadDataOnly(true);
перед загрузкой файла?
Если вам не нужно обращаться ко всем листам или только к определенным ячейкам на листе, посмотрите на использование
$objReader->setLoadSheetsOnly(array(1,2))
или
$objReader->setLoadSheetsOnly(1)
или определение readFilter
Используете ли вы кэширование ячеек? Если да, то какой метод? Это замедляет время загрузки.
Я слышал, что Excel Explorer лучше читает большие файлы.
17 МБ - это здоровенный файл.
Определите, сколько времени потребуется для синтаксического анализа файла размером 1 МБ, чтобы вы могли рассчитать, сколько времени потребуется для файла размером 17 МБ. Тогда одним из вариантов может быть просто увеличение 120-секундного лимита.
В качестве альтернативы, вы можете экспортировать в CSV, что будет намного эффективнее, и импортировать через PHP fgetcsv.
Возможно, вы могли бы преобразовать / экспортировать в CSV и использовать встроенную функцию fgetcsv (). Зависит от того, какой функционал вам нужен.