$spreadsheet = new Spreadsheet();// 初始化
$spreadsheet->createSheet();// 添加一個sheet
$sheet = $spreadsheet->getSheet(1);// 操作第二個sheet
$sheet = $spreadsheet->getActiveSheet();
// 設置值的三種辦法
$sheet->setCellValue('E6', 'www.helloweba.net');
$sheet->getCell('A1')->setValue('John');
$sheet->setCellValueByColumnAndRow(5, 5, 'hahah');
$sheet->mergeCellsByColumnAndRow(1, 2,1, 5);// 合並單元格
$sheet->mergeCells('A1:E1');// 合並單元格
for ($i=1; $i <= 10; $i++) {
$sheet->setCellValue('A'.$i, 'Hello World 加上考慮對方就愛上了對方就撒');// 合並單元格之后這樣可以放進去
$sheet->setCellValue('B'.$i, 'Hello World 加上考慮對方就愛上了對方就撒');// 合並單元格之后這樣可以放進去
$sheet->setCellValue('C'.$i, 'Hello World 加上考慮對方就愛上了對方就撒');// 合並單元格之后這樣可以放進去
}
$sheet->getStyle('A3:C3')->getFont()->setBold(true);// 一定范圍內字體加粗
$sheet->getStyle('A4:C5')->getFont()->getColor()->setARGB('cc3399');// 字體顏色,使用rgb的顏色格式
$sheet->getColumnDimension('A')->setWidth(50);// 設置列的寬度
$sheet->getDefaultColumnDimension()->setWidth(50);//設置默認列寬
$sheet->getColumnDimension('B')->setAutoSize(true);//自動設置列寬
$sheet->getRowDimension('1')->setRowHeight(50);//設置行高
$sheet->getDefaultRowDimension()->setRowHeight(15);// 設置默認行高
$sheet->getStyle('A2:E2')->getFont()->setSize(14);// 設置字體大小
$sheet->getStyle('A1:C1')->getAlignment()->setVertical(Alignment::VERTICAL_TOP);// 垂直向上
$sheet->getStyle('A1:C1')->getFill()->setFillType(Fill::FILL_SOLID)->getStartColor()->setARGB('66ccff');// 設置背景色
$styleArray = [
'borders' => [
'outline' => [
'borderStyle' => Border::BORDER_THICK,
'color' => ['argb' => '3399ff'],
],
'inside' =>[
'borderStyle' => Border::BORDER_THIN,
'color' => ['argb' => 'cc0000'],
]
],
];
$sheet->getStyle('A1:C5')->applyFromArray($styleArray);// 外邊框,內邊框
$styleArray = [
'borders' => [
'outline' => [
'borderStyle' => Border::BORDER_THICK,
'color' => ['argb' => 'FFFF0000'],
],
],
'font' => ['bold' => true],
'alignment' => [
'horizontal' => Alignment::HORIZONTAL_CENTER,// 水平居中
'vertical' => \PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER //垂直居中
],
];
$sheet->getStyle('B2:E8')->applyFromArray($styleArray);// 加粗,水平居中,邊框線顏色
$sheet->setTitle('就當是標題了');// 當前工作表標題
$sheet->getCell('A4')->setValue("hello\nworld");// 換行
$sheet->setCellValue('E6', 'www.helloweba.net');
$sheet->getCell('E6')->getHyperlink()->setUrl('https://www.helloweba.net');// 點擊直接跳轉
$spreadsheet->getProperties()
->setCreator("作者") //作者
->setLastModifiedBy("修改者") //最后修改者
->setTitle("這是標題") //標題
->setSubject("這是副標題") //副標題
->setDescription("這是描述") //描述
->setKeywords("這是關鍵字") //關鍵字
->setCategory("分類"); //分類
$writer = new Xlsx($spreadsheet);
$name=rand(10,99);
$writer->save($name.'.xlsx');// 直接下載到本地文件夾里