使用 PhpSpreadSheet 写入 excel 文件非常慢

Tot*_*o D 5 php excel time spreadsheet phpspreadsheet

我正在使用 PhpSpreahSheet 读取多个 Excel 文件并将它们合并到一个文件中。我用以下代码读取我的文件:

$readerData = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
$spreadData = $readerData->load("File/file1.xlsx");

$readerData = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
$spreadData = $readerData->load("File/file2.xlsx");
Run Code Online (Sandbox Code Playgroud)

然后,我使用 php 中的 array_merge :

$mergeFileData = array_merge($sheetConfig, $sheetData);
Run Code Online (Sandbox Code Playgroud)

然后我将数组写入一个新文件:

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->fromArray($mergeFileDataEnd);
$writer = new Xlsx($spreadsheet);
$writer->save('mergedFile.xlsx');
Run Code Online (Sandbox Code Playgroud)

问题是,当我执行这段代码时,生成合并文件的速度非常慢,对于excel文件,每个文件都有超过20k行和30列要生成excel,我必须增加服务器的内存和执行时间限制为 30 秒...

您有优化执行时间的想法吗?

编辑:事实上,生成我的 Excel 文件需要 10 分钟......