如何在 php 中导出多个工作表中的数据

How to export data in multiple sheets in php

我在 php 中使用 PHPExcel class 导出数据,但 PHPExcel 1.8 版已于 2015 年弃用。

我能找到导出多张工作表的替代解决方案吗?

PHPExcel 库已被弃用。来自 Github repository of PHPExcel

PHPExcel - DEPRECATED

PHPExcel last version, 1.8.1, was released in 2015. The project is no longer maintained and should not be used anymore.

All users should migrate to its direct successor PhpSpreadsheet, or another alternative.

备选

PHPSpreadsheet (Github Repository)。来自 Github 描述:

PhpSpreadsheet is a library written in pure PHP and providing a set of classes that allow you to read from and to write to different spreadsheet file formats, like Excel and LibreOffice Calc.

PhpSpreadsheet is the next version of PHPExcel. It breaks compatibility to dramatically improve the code base quality (namespaces, PSR compliance, use of latest PHP language features, etc.).

我会推荐使用 Box/Spout : https://github.com/box/spout 如果你必须处理大量数据! (注意:我与这个项目没有任何关系)

可能取决于您正在寻找的 PHPExcel 功能...

您可以使用 PHPSpreadhsheet。这就是当前弃用的 PHPExcel 库的延续。


根据docs. You will need to use the Composer包管理器在您的机器上安装这个库,在安装位置通过运行以下命令-

composer require phpoffice/phpspreadsheet

按以下方式将库包含在您的 .php 文件中 -

<?php

    // load the classes provided by PHPSpreadSheet
    require 'vendor/autoload.php';

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

    $spreadsheet = new Spreadsheet();

    // code to create and use worksheet goes here
?>

到create/add新作品sheets可以使用这个功能-

$spreadsheet->createSheet();

您可以在 for()while() 循环中使用上述命令创建多个作品sheet。

要获取作品sheet并进行编辑,您可以通过以下方式按索引获取-

$spreadsheet->getSheet(1);

以上命令将从工作簿中获取第二个 sheet(因为工作sheet 总是从“0”开始索引)。