PhpSpreadsheet是一个纯PHP编写的组件库,它使用现代PHP写法,代码质量和性能比PHPExcel高不少,完全可以替代PHPExcel(PHPExcel已不再维护)。使用PhpSpreadsheet可以轻松读取和写入Excel文档,支持Excel的所有操作。
由于PHP操作Excel在我们项目开发过程中经常用到,所以我特意将PhpSpreadsheet的应用讲解分为4节内容,更加贴近我们的实际应用场景。这4节内容分别是:
- 1.初识PhpSpreadsheet
- 2.使用PhpSpreadsheet将Excel导入到MySQL数据库
- 3.使用PhpSpreadsheet将数据导出为Excel文件
- 4.详解PhpSpreadsheet设置单元格
本文先了解第1节内容。
软件依赖
要使用PhpSpreadsheet需要满足以下条件:
- PHP5.6或更改版本,推荐PHP7
- 支持php_zip扩展
- 支持php_xml扩展
- 支持php_gd2扩展
安装
现在开始,创建项目目录/PHPExcel,进入项目目录。
使用composer安装:
composer require phpoffice/phpspreadsheet
如何使用
在项目目录下新建/public目录,在public目录下创建示例文件test.php,编辑test.php,用以下代码。
<?php
require '../vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Welcome to Helloweba.');
$writer = new Xlsx($spreadsheet);
$writer->save('hello.xlsx');
运行代码,你会发现在目录下生成一个hello.xlsx文件,打开Excel文件,你会看到Excel中的单元格A1中有“Welcome to Helloweba.”内容。当然你可以对单元格样式诸如颜色、背景、宽度、字体等等进行设置,这些会在接下来的几节中讲到。
PhpSpreadsheet特性
支持读取.xls,.xlsx,.html,.csv等格式文件,支持写入导出.xls,.xlsx,.html,.csv,.pdf格式文件。
提供丰富的API,提供单元格样式设置、Excel表格属性设置、图表设置等等诸多功能。使用PhpSpreadsheet完全可以生成一个外观结构都满足你的Excel表格文件。
卓越的性能,尤其在PHP7上表现优异,比PHPExcel强大很多。