安装composer require phpoffice/phpspreadsheetuse PhpOffice\PhpSpreadsheet\Spreadsheet;use PhpOffice\PhpSpreadsheet\Writer\Xlsx;use PhpOffice\PhpSpreadsheet\Style\Border;$spreadsheet = new Spreadsheet();$sheet = $spreadsheet->getActiveSheet();//从65开,65是第1列,66是第二列,2是第二行$sheet->setCellValue(strtoupper(chr(65)) . '1', '大得');$sheet->setCellValue(strtoupper(chr(66)) . '1', '大得');$sheet->setCellValue(strtoupper(chr(66)) . '2', '大2');header('Content-Type: application/vnd.ms-excel');header('Content-Disposition: attachment;filename=/www/wwwroot/swoole/erp-test-zhoao2/excel/666.xlsx"');header('Cache-Control: max-age=0');$writer = new Xlsx($spreadsheet);$date = date("Ymd");$Absolute_Path=$_SERVER['SCRIPT_FILENAME'];$user_path = substr($Absolute_Path,0,-9)."storage/cdjdade/{$date}";//保存路径if(!is_dir($user_path)){ mkdir($user_path);}$writer->save($user_path.'/666.xlsx');//删除清空:$spreadsheet->disconnectWorksheets();unset($spreadsheet);
报错Invalid cell coordinate [1,下标超过26个字母
$spreadsheet = new Spreadsheet(); $sheet = $spreadsheet->getActiveSheet(); $sheet->setCellValue(strtoupper(chr(65)) . '1', '部门'); $sheet->setCellValue(strtoupper(chr(66)) . '1', '员工'); $sheet->setCellValue(strtoupper(chr(67)) . '1', '入职日期'); $sheet->setCellValue(strtoupper(chr(68)) . '1', '岗位'); $sheet->setCellValue(strtoupper(chr(69)) . '1', '职位'); for ($i=1;$i<=$day;$i++){ $s = round(69+$i); if($s<91){ $sheet->setCellValue(strtoupper(chr($s)) . '1', $i); }else{ //超过26个字母,在此超过B $s = $s-26; $sheet->setCellValue(chr(ord("A")).strtoupper(chr($s)) . '1', $i); } } header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename=/www/wwwroot/swoole/erp-test-zhoao2/excel/666.xlsx"'); header('Cache-Control: max-age=0'); $writer = new Xlsx($spreadsheet); $date = date("Ymd"); $Absolute_Path=$_SERVER['SCRIPT_FILENAME']; $user_path = substr($Absolute_Path,0,-9)."storage/cdjdade/{$date}";//保存路径 if(!is_dir($user_path)){ mkdir($user_path); } $dates = date("YmdHis"); $writer->save($user_path."/$dates.xlsx"); //删除清空: $spreadsheet->disconnectWorksheets(); unset($spreadsheet);
样式
https://blog.csdn.net/qq_34631220/article/details/130628902
来源地址:https://blog.csdn.net/qq_34631220/article/details/132543643