第一步:在laravel8项目的根目录下:
composer require maatwebsite/excel
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
php artisan migrate
先打开DatabaseSeeder.php的注释:
php artisan db:seed --class=DatabaseSeeder
php artisan make:export UsersExport --model=User
routes/web.php下:
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\IndexController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/export', [\App\Http\Controllers\IndexController::class,'export']);
//index控制器export方法以export来替代
IndexController.php
<?php
namespace App\Http\Controllers;
use App\Exports\UsersExport;
use Maatwebsite\Excel\Facades\Excel;
class IndexController extends Controller
{
public function Export()//导出excel文件
{
return Excel::download(new UsersExport(),'users.xlsx');//下载数据库中的表数据users
}
}
php artisan serve