Laravel 以「優雅語法、開發體驗至上」聞名,已成為 PHP 生態最受歡迎的全端框架。本文系統整理其 11 項核心技術特點,並附實戰代碼片段,幫助開發者快速掌握框架精髓。
Laravel 早期稱擴展包為 Bundle,現代統一用 Composer Package。
composer require spatie/laravel-permission 即可安裝權限管理,php artisan vendor:publish 發佈配置。
Artisan 命令列工具贯穿開發全生命週期。
query() 串接條件、分頁、預載入$users = User::where('votes', '>', 100)
->with('posts')
->latest()
->paginate(15);
Route::get('/', fn() => view('welcome'));__invoke()路由命名後,全域可用 route('profile')、action([UserController::class, 'show']) 生成 URL,修改路由定義自動更新全站連結。
Route::get('/user/{id}', [UserController::class, 'show'])->name('profile');
// Blade: {{ route('profile', ['id' => 1]) }}
php artisan make:controller PhotoController --resource 一鍵生成 7 個標準動作:
| Verb | URI | Action | Route Name |
|---|---|---|---|
| GET | /photos | index | photos.index |
| GET | /photos/create | create | photos.create |
| POST | /photos | store | photos.store |
| GET | /photos/{photo} | show | photos.show |
| GET | /photos/{photo}/edit | edit | photos.edit |
| PUT/PATCH | /photos/{photo} | update | photos.update |
| DELETE | /photos/{photo} | destroy | photos.destroy |
Composer PSR-4 + Laravel 服務容器綁定,use App\Models\User; 即用即載,無需手動 require。
共享資料注入所有視圖,適用於導航選單、側邊欄、全域通知:
// AppServiceProvider::boot()
View::composer('layouts.sidebar', function ($view) {
$view->with('recentPosts', Post::latest()->take(5)->get());
});
$this->app->bind(Repository::class, EloquentRepository::class);$this->app->singleton(Service::class, fn() => new Service);版本控制資料庫結構,團隊協作零衝突:
php artisan make:migration create_posts_table php artisan migrate php artisan migrate:rollback
php artisan test 一鍵執行$this->get('/')->assertSee('Laravel');use RefreshDatabase;$users = User::paginate(15);
return view('users.index', compact('users'));
Blade 輸出:{{ $users->links() }} 自動生成 Bootstrap/Tailwind 風格分頁導航。
| 套件/工具 | 用途 |
|---|---|
| Lumen | 微服務/高效能 API 精簡框架 |
| Laravel Octane | Swoole/RoadRunner 加速,常駐記憶體 |
| Laravel Sanctum / Passport | API Token / OAuth2 認證 |
| Laravel Cashier | Stripe/Paddle 訂閱計費 |
| Laravel Echo + Pusher/Soketi | 即時廣播 |
| Laravel Horizon | Redis 隊列監控儀表板 |
| Laravel Telescope | 本地開發除錯儀表板 |
| Laravel Pint | 代碼風格自動修正 |
// 路由群組 + 中介層
Route::middleware('auth')->group(function () {
Route::resource('posts', PostController::class);
});
// 快取標籤
Cache::tags(['users', 'posts'])->put('key', $data, 3600);
// 事件/監聽器
Event::dispatch(new OrderShipped($order));
// 隊列任務
ProcessPodcast::dispatch($podcast)->delay(now()->addMinutes(10));
// 加密/解密
$encrypted = Crypt::encryptString('secret');
$decrypted = Crypt::decryptString($encrypted);
Laravel 以「約定優於配置」、豐富生態、優雅語法三大支柱,降低 PHP 開發門檻並提升上限。掌握上述 11 大核心特性,即可應對從中小專案到企業級系統的完整開發需求。