getActiveSheet(); // file_put_contents('account-receivable.txt', json_encode($Bill)); if ($type == 'repair') { $colomnHeader = [ '合約號', '合約日期', '客戶編號', '客戶名稱', '部門', '契約人員工號', '契約人員名稱', '主管工號', '主管名稱', '合約總金額', '應收金額', '已開金額', '未開金額', '已收金額', '催收金額', '催收次數' ]; $sheet->fromArray($colomnHeader, NULL, 'A1'); $rowIndex = 2; foreach ($Bill as $key => $value) { $sheet->fromArray($value, NULL, 'A' . $rowIndex); $column = [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q' ]; foreach ($column as $col) { $sheet->getColumnDimension($col)->setAutoSize(true); } $rowIndex++; } $writer = new Xlsx($spreadsheet); $excelFileName = 'account-receivable-repair.xlsx'; } else { $colomnHeader = [ '合約號', '作番號', '部門編號', '部門名稱', '主管工號', '主管名稱', '營業員工號', '營業員名稱', '客戶名稱', '抬頭', '統編', '通訊地址', '收款階段名稱', '應收日期', '是否應收', '應收金額', '已開金額', '未開金額', '已收金額', '催收金額', '催收次數' ]; $sheet->fromArray($colomnHeader, NULL, 'A1'); $rowIndex = 2; foreach ($Bill as $key => $value) { $sheet->fromArray($value, NULL, 'A' . $rowIndex); $column = [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T' ]; foreach ($column as $col) { $sheet->getColumnDimension($col)->setAutoSize(true); } $rowIndex++; } $writer = new Xlsx($spreadsheet); $excelFileName = 'account-receivable-renovate.xlsx'; } $writer->save($excelFileName); echo $excelFileName;