Github每日精选(第29期):Laravel 中 Excel 导出和导入Laravel-Excel

发布于:2023-01-04 ⋅ 阅读:(320) ⋅ 点赞:(0)

Laravel-Excel

Laravel-Excel一个简单但优雅的Laravel包装器,围绕PhpSpreadsheet 导出和导入。

github 下的地址在这里

特性

  • 轻松将集合导出到 Excel。增强您的 Laravel 集合并将它们直接导出到 Excel 或 CSV 文档。出口从未如此简单。

  • 强劲的导出功能。使用自动分块导出查询以获得更好的性能。您向我们提供查询,我们处理性能。导出更大的数据集?不用担心,Laravel Excel 为您提供支持。您可以对导出进行排队,以便所有这些都在后台进行。

  • 强劲的导入功能。使用块读取和批量插入将工作簿和工作表导入 Eloquent 模型!有大文件吗?您可以对文件的每一块进行排队!您的整个导入将在后台进行。

  • 导出Blade视图。想要在您的电子表格中拥有自定义布局?在 Blade视图中使用 HTML 表格并将其导出到 Excel。

在这里插入图片描述

如何使用

创建一个导出类app/Exports

您可以使用make:export命令来执行此操作。

php artisan make:export UsersExport --model=User

该文件可以在以下位置找到app/Exports

.
├── app
│   ├── Exports
│   │   ├── UsersExport.php
│ 
└── composer.json

如果您更喜欢手动创建导出,可以在 中创建以下内容app/Exports

<?php

namespace App\Exports;

use App\Models\User;
use Maatwebsite\Excel\Concerns\FromCollection;

class UsersExport implements FromCollection
{
    public function collection()
    {
        return User::all();
    }
}

在您的控制器中,您现在可以调用此导出:

<?php

namespace App\Http\Controllers;

use App\Exports\UsersExport;
use Maatwebsite\Excel\Facades\Excel;

class UsersController extends Controller 
{
    public function export() 
    {
        return Excel::download(new UsersExport, 'users.xlsx');
    }
}

最后添加一个能够访问导出的路由:

Route::get('users/export/', 'UsersController@export');

users.xlsx在您的下载文件夹中找到您的!


网站公告

今日签到

点亮在社区的每一天
去签到