我在我的应用程序中使用 PhpExcel。 当我使用下面的代码为单个单元格设置边框时,它工作正常。但是当我将它用于列(“A”)中的所有单元格时,它会抛出以下错误:
致命错误:C:\xampp\htdocs 中允许的内存大小 134217728 字节已耗尽(尝试分配 24 字节) 在\xls-class\PHPExcel\Worksheet.php 第 1219 行
定义边框样式:
$border_style= array('borders' => array('right' => array('style' => PHPExcel_Style_Border::BORDER_THIN)));
应用于“A”列中的所有单元格:
$sheet->getStyle("A")->applyFromArray($border_style);
您不能将样式应用于列,只能应用于单个单元格或单元格区域
$sheet->getStyle("A1:A65535")->applyFromArray($border_style);
您可以在单元格或单元格范围上应用边框,例如以下代码有效 对我来说:
public static function afterSheet(AfterSheet $event)
{
$sheet = $event->sheet->getDelegate();
$sheet->getStyle('A4:Z5')->applyFromArray([
'borders' => [
'allBorders' => [
'borderStyle' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN,
'color' => ['argb' => '000000'],
],
],
]);
}
只需在导出类中实现该函数即可。