есть ошибка
memory_limit = 1536M - больше не могу установить
мой код
Excel::download(new ReportExport($data), 'excel.xlsx');
$data
это сбор данных с 500000 строк +
Как я могу записать столько данных?
При чтении файла представления вашему процессу PHP не хватает памяти. Я думаю, что 500000 строк - это многовато для стратегии FromView. Вы можете попробовать подход, использованный в этой статье: https://stefanzweifel.io/posts/lazy-collections-in-laravel-excel/
При чтении файла представления вашему процессу PHP не хватает памяти. Я думаю, что 500000 строк - это многовато для стратегии FromView. Вы можете попробовать подход, использованный в этой статье: https://stefanzweifel.io/posts/lazy-collections-in-laravel-excel/
Я не могу использовать cursor (), потому что использую версию Laravel: 5.5. *. И данные я получаю не только из базы данных, через вычисления на php, потому что база данных не позволяет такие вычисления. В любом случае у меня будет массив из 500 000 строк, прежде чем я передам его в файл генератора Excel.
@patrickbrouwers Я пробовал подход из статьи, но получаю:
Return value of Maatwebsite\Excel\QueuedWriter::exportCollection() must be an instance of Illuminate\Support\Collection, instance of Illuminate\Support\LazyCollection returned
@fedeisas какую версию laravel вы используете?
@patrickbrouwers
laravel/framework v6.18.1 The Laravel Framework.
maatwebsite/excel 3.1.19 Supercharged Excel exports and imports in Laravel
phpoffice/phpspreadsheet 1.11.0 PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine
Я использую записи в очереди. Может в этом проблема?
Я пытаюсь выполнить экспорт для распределенных рабочих (используя S3), и FromQuery
мучительно медленный (1 час для экспорта 30 тыс. Строк).
Поэтому я пытаюсь переключиться на ленивые коллекции и cursor()
но безуспешно.
Ошибка использования очереди
Return value of Maatwebsite\Excel\QueuedWriter::exportCollection() must be an instance of Illuminate\Support\Collection, instance of Illuminate\Support\LazyCollection returned
но Excel :: загрузка в порядке
Я по-прежнему не могу экспортировать данные размером 60 КБ с помощью функции FromQuery или LazyCollection с настройкой памяти 512 МБ
любой другой параметр для реализации этого?
https://stefanzweifel.io/posts/lazy-collections-in-laravel-excel/
Самый полезный комментарий
Ошибка использования очереди
Return value of Maatwebsite\Excel\QueuedWriter::exportCollection() must be an instance of Illuminate\Support\Collection, instance of Illuminate\Support\LazyCollection returned
но Excel :: загрузка в порядке