在 Laravel 5 中使用 Maatwebsite 导入导出到 Excel 和 CSV

17 Mar 2025 | 4 分钟阅读

在本节中,我们将使用 Maatwebsite 以便我们可以导入导出 CSV 和 Excel。我们将使用 Laravel 5 来做到这一点。我们将使用数据库来存储导入的 CSV 或 Excel 文件。通过使用 Maatwebsite,我们可以从数据库的表中下载或导出 CSV 或 Excel 文件。

我们可以通过使用 Maatwebsite 的包轻松获取数据。它对于按数据分组也很有用,我们可以创建多个工作表。在下面的示例中,我们描述了 items 表数据。我们可以使用 CSV、XLS 和 XLSX 格式下载它,我们也可以使用 CSV、XLS 和 XLSX 文件导入数据。在我们的 Laravel 5 项目中,我们可以按照以下步骤逐步实现导出和导入功能

步骤 1

在此步骤中,我们将进行安装。我们将使用名为 composer.json 的文件,然后使用所需的包,并根据我们的 Laravel 版本将以下行放入其中。

Laravel 5

Laravel 4

现在我们将运行以下命令

现在我们将使用名为 config/app.php 的文件,然后我们将 aliase 和 service provider 添加到其中

配置

如果我们像这样使用 Laravel 5,我们将使用以下命令

如果我们像这样使用 Laravel 4,我们将使用以下命令

为了创建一个配置文件,此命令将非常有用。该文件将用于 excel 包中。

步骤 2

在第二步中,我们将创建表和模型。我们将使用 item 表来创建迁移。我们将使用 Laravel 5 的 php artisan 命令来创建它,如下所述:

当我们成功执行上述命令时,我们将使用 database/migrations 路径来获取一个文件。现在我们将使用我们的迁移文件,并将以下代码添加到其中以创建 item 表,如下所示

当我们成功创建此“items”表时,我们需要创建一个 Item 模型。为此,我们将使用 app/Item.php 路径,然后将以下代码添加到其中

app/item.php

步骤 3

在此步骤中,我们将创建路由。我们将为此创建导入导出文件。为此,我们将使用名为 app/Http/routes.php 的文件,然后我们将放入以下路由

步骤 4

在此文件中,我们将创建控制器。我们将创建一个新的控制器 MaatwebsiteDemoController。我们将使用 app/Http/Controllers/MaatwebsiteDemoController.php 路径来创建此控制器。所有 importExcel 请求、importExport、return response 和 downloadExcel 都可以由此控制器管理。现在我们将使用控制器文件并将以下内容添加到其中

app/Http/Controllers/MaatwebsiteDemoController.php

步骤 5

在此步骤中,我们将创建视图。我们将通过创建名为 importExport.blade.php 的文件来创建布局。该文件将用于编写设计代码。我们将以下代码添加到该文件中

importExport.blade.php

现在我们的上述脚本已准备好运行。为了快速运行上述脚本,我们将使用我们的浏览器。当我们打开浏览器时,我们将看到如下预览

Import Export to Excel and CSV using Maatwebsite in Laravel 5

导入文件

Import Export to Excel and CSV using Maatwebsite in Laravel 5