PHPExcel Writer Excel2007 ошибка

Я недавно столкнулся с этой ошибкой в ​​своем отчете.

PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 3022731 bytes)

Я не могу решить проблему, я уже добавил:

set_time_limit(0);
ini_set('memory_limit', -1);

в моем сценарии, но кажется, что проблема все еще остается, кстати, я использую

PHPExcel ver 1.7.6

Вывод моего файла Excel содержит 55 заголовков и несколько таблиц (более 45 - увеличивается), и каждый лист содержит от 150 до 500 записей

Я хотел бы обратиться за вашей помощью и советует решить мое лекарство T_T

Спасибо!

2 ответа

Возможно попробуйте использовать https://github.com/PHPOffice/PhpSpreadsheet - это переписанная версия PhpExcel. Это работает намного лучше. Я знаю, потому что я использовал оба.

Если это не поможет вам решить проблему, используйте кэширование, см. https://phpspreadsheet.readthedocs.io/en/develop/topics/memory_saving/

PS, если вы будете использовать кэширование sqlite3, убедитесь, что у вас установлено правильное расширение php-sqlite3, потому что оно молча завершается сбоем и не кэшируется, если расширение отсутствует.

Я бы предложил импортировать файл Excel в базу данных Access, а затем запросить базу данных через ODBC из PHP.

Другие вопросы по тегам