From b9f770b21d0a6b6986bbe5e6b334d9c3bd2d94b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=94=B0?= Date: Thu, 4 Sep 2025 07:19:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=80=9A=E7=94=A8=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E4=B8=AD=E6=89=80=E6=9C=89=E8=A1=A8=E5=8D=95=E4=B8=BA?= =?UTF-8?q?=E6=96=87=E6=9C=AC=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/download/controller/Excel.php | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/application/download/controller/Excel.php b/application/download/controller/Excel.php index 5f658d2..4f24bf1 100644 --- a/application/download/controller/Excel.php +++ b/application/download/controller/Excel.php @@ -110,13 +110,30 @@ class Excel extends Controller $columnCount = count($data[0]); $rowCount = count($data); - // 写入数据 + // // 写入数据 + // foreach ($data as $rowIndex => $rowData) { + // for ($colIndex = 0; $colIndex < $columnCount; $colIndex++) { + // $sheet->setCellValueByColumnAndRow($colIndex + 1, $rowIndex + 1, $rowData[$colIndex]); + // } + // } + + // 修改后的代码(强制文本格式) + use PhpOffice\PhpSpreadsheet\Cell\DataType; // 确保顶部已引入 + foreach ($data as $rowIndex => $rowData) { for ($colIndex = 0; $colIndex < $columnCount; $colIndex++) { - $sheet->setCellValueByColumnAndRow($colIndex + 1, $rowIndex + 1, $rowData[$colIndex]); + $cellValue = $rowData[$colIndex]; + // 强制设置为文本格式 + $sheet->setCellValueExplicitByColumnAndRow( + $colIndex + 1, + $rowIndex + 1, + (string)$cellValue, + DataType::TYPE_STRING + ); } } + // 设置表头样式 $headerRange = 'A1:' . $this->getExcelColumnName($columnCount) . '1'; $sheet->getStyle($headerRange)->applyFromArray($options['header_style']);