📜  phpspreadsheet 编辑 excel 文件 - PHP (1)

📅  最后修改于: 2023-12-03 15:18:33.095000             🧑  作者: Mango

使用 PHPSpreadsheet 编辑 Excel 文件 - PHP

简介

PHPSpreadsheet 是一个用于创建和修改 Excel 文件的开源 PHP 库。它是 PHPExcel 的继承项目,并且具有更多的功能和更好的性能。PHPSpreadsheet 支持读取、写入和编辑多种 Excel 文件格式,包括 XLS、XLSX、ODS 和 CSV。它提供了丰富的 API,使程序员能够轻松地创建、编辑和格式化 Excel 文件。

在本文中,我们将介绍如何使用 PHPSpreadsheet 来编辑 Excel 文件,包括创建和修改工作表、设置单元格内容和样式,以及保存和下载 Excel 文件。

安装

你可以通过使用 Composer 来安装 PHPSpreadsheet。在终端或命令行界面中,进入你的项目目录并运行以下命令:

composer require phpoffice/phpspreadsheet

安装完成后,你就可以开始使用 PHPSpreadsheet 来编辑 Excel 文件了。

创建新的 Excel 文件

下面的代码片段展示了如何创建一个新的 Excel 文件,并在文件中创建一个工作表:

<?php
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

// 创建新的 Excel 对象
$spreadsheet = new Spreadsheet();

// 创建一个工作表
$sheet = $spreadsheet->getActiveSheet();

// 设置工作表标题
$sheet->setTitle('My First Spreadsheet');

// 保存 Excel 文件
$writer = new Xlsx($spreadsheet);
$writer->save('my_first_spreadsheet.xlsx');

echo 'Excel 文件已创建成功!';
修改现有的 Excel 文件

下面的代码片段展示了如何打开一个现有的 Excel 文件,并修改其中的内容:

<?php
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\IOFactory;

// 打开 Excel 文件
$spreadsheet = IOFactory::load('existing_spreadsheet.xlsx');

// 获取第一个工作表
$sheet = $spreadsheet->getActiveSheet();

// 修改单元格内容
$sheet->setCellValue('A1', 'Hello World!');

// 保存 Excel 文件
$writer = IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('existing_spreadsheet.xlsx');

echo 'Excel 文件已成功修改!';
设置单元格样式

PHPSpreadsheet 还提供了丰富的 API 来设置单元格的样式,如字体、背景颜色、边框等。以下代码片段展示了如何设置单元格的样式:

<?php
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Style\Alignment;
use PhpOffice\PhpSpreadsheet\Style\Border;
use PhpOffice\PhpSpreadsheet\Style\Fill;
use PhpOffice\PhpSpreadsheet\Style\Font;

// 创建新的 Excel 对象
$spreadsheet = new Spreadsheet();

// 创建一个工作表
$sheet = $spreadsheet->getActiveSheet();

// 设置单元格内容
$sheet->setCellValue('A1', 'Hello World!');

// 设置单元格样式
$style = $sheet->getStyle('A1');
$style->getFont()->setName('Arial');
$style->getFont()->setSize(12);
$style->getFont()->setBold(true);

$style->getAlignment()->setHorizontal(Alignment::HORIZONTAL_CENTER);
$style->getAlignment()->setVertical(Alignment::VERTICAL_CENTER);

$style->getFill()->setFillType(Fill::FILL_SOLID);
$style->getFill()->getStartColor()->setARGB('FFFF0000');

$style->getBorders()->getOutline()->setBorderStyle(Border::BORDER_THIN);
$style->getBorders()->getOutline()->getColor()->setARGB('FF000000');

// 保存 Excel 文件
$writer = new Xlsx($spreadsheet);
$writer->save('styled_spreadsheet.xlsx');

echo 'Excel 文件已成功创建并设置样式!';
结论

在本文中,我们介绍了如何使用 PHPSpreadsheet 来编辑 Excel 文件。你可以使用 PHPSpreadsheet 创建新的 Excel 文件、修改现有的 Excel 文件,以及设置单元格的内容和样式。PHPSpreadsheet 为程序员提供了强大且易于使用的 API,并支持多种文件格式。开始使用 PHPSpreadsheet,让你的 PHP 应用程序轻松处理 Excel 文件!

请注意,以上示例仅为演示目的,你可以根据自己的需求进行修改和扩展。