技術 5 分鐘閱讀
2026 年 Laravel 生態系總覽:最推薦的 10 個套件
前言
做了一年多的接案,我歸納出這 10 個 Laravel 套件是幾乎每個專案都會用到的。2026 年的 Laravel 生態系比以前更成熟了,以下按照使用頻率排序。
1. Spatie Laravel Permission
權限管理的業界標準:
$user->assignRole('admin');
$user->givePermissionTo('edit articles');
// Blade 模板中
@can('edit articles')
<button>編輯</button>
@endcan
幾乎每個有會員系統的專案都需要。
2. Laravel Sanctum
API 認證首選,比 Passport 輕量許多:
$token = $user->createToken('api-token')->plainTextToken;
// 搭配 Middleware
Route::middleware('auth:sanctum')->group(function () {
// 受保護的路由
});
3. Spatie Laravel Media Library
處理檔案上傳和圖片轉換的神器:
$product->addMediaFromRequest('image')
->usingFileName('product.webp')
->toMediaCollection('images');
// 取得縮圖
$product->getFirstMediaUrl('images', 'thumb');
4. Laravel Debugbar
開發環境必裝的除錯工具:
composer require barryvdh/laravel-debugbar --dev
可以即時看到 SQL 查詢數量、記憶體使用量、路由資訊,是效能優化的好幫手。
5. Spatie Laravel Backup
自動備份資料庫和檔案:
php artisan backup:run
搭配排程自動執行,接案專案的必備保險。
6. Laravel Excel (Maatwebsite)
匯出匯入 Excel 檔案:
return Excel::download(new OrdersExport, 'orders.xlsx');
客戶最愛的功能之一,幾乎每個後台都會需要。
7. Spatie Laravel Sitemap
自動產生 sitemap.xml,對 SEO 很重要:
SitemapGenerator::create('https://example.com')->writeToFile(public_path('sitemap.xml'));
8. Laravel Horizon
Redis 佇列的管理介面,適合需要背景任務的專案。視覺化監控佇列狀態,比 queue:work 方便太多。
9. Spatie Laravel Data
把 Data Transfer Object 變得優雅:
class ProductData extends Data
{
public function __construct(
public string $name,
public int $price,
public ?string $description,
) {}
}
// 自動從 Request 轉換
$data = ProductData::from($request);
搭配 TypeScript 還能自動產生前端型別。
10. Pest PHP
測試框架新選擇,語法比 PHPUnit 簡潔很多:
test('user can create product', function () {
$user = User::factory()->create();
$this->actingAs($user)
->post('/products', ['name' => 'Test', 'price' => 100])
->assertStatus(201);
expect(Product::count())->toBe(1);
});
如何選擇套件?
根據我的經驗,選擇套件要注意:
- 維護狀態:最後更新時間、GitHub Stars
- 文件品質:Spatie 系列通常做得最好
- 社群支援:Stack Overflow、GitHub Issues 的活躍度
- 與 Laravel 版本相容性
小結
這些套件能大幅加速開發,但也不要為了用套件而用套件。需求簡單的話,Laravel 內建功能就夠了。搭配 Docker 環境和 CI/CD,就能建立一個非常完整的開發流程。
如果你需要類似的系統,歡迎聯繫討論。
#Laravel #套件推薦