Laravel Artisan 指令教學

php artisan 是 Laravel 提供的命令列工具,可用於快速生成程式碼、執行資料庫遷移、啟動伺服器、建立控制器、模型等。透過 Artisan,開發者可更方便進行日常開發工作。


🔧 常用 Artisan 指令

指令 說明
make:model 建立模型
make:controller 建立控制器
make:middleware 建立中介層
make:migration 建立資料庫遷移
migrate 執行資料庫遷移
db:seed 執行 Seeder 資料填充
make:factory 建立工廠類別
route:list 列出所有路由
tinker 進入 Tinker REPL 環境
list 查看所有可用 Artisan 指令

Laravel 6 後 make:auth 已從核心移除,需改用 Breeze、Jetstream 等套件。


🧱 建立模型:make:model

建立新的 Eloquent 模型:

php artisan make:model Product

建立同時附帶 Factory、Seeder:

php artisan make:model Product --factory --seeder

建立帶命名空間的模型:

php artisan make:model Models/Shop/Product

🧭 建立控制器:make:controller

建立控制器:

php artisan make:controller ProductController

建立資源控制器(含七個動作):

php artisan make:controller ProductController --resource

🧩 建立 Middleware:make:middleware

php artisan make:middleware CheckAge

會建立於 app/Http/Middleware/CheckAge.php,可自訂邏輯處理。


🗄 建立資料庫遷移:make:migration

建立 users 資料表:

php artisan make:migration create_users_table

新增欄位:

php artisan make:migration add_status_to_users_table

刪除欄位:

php artisan make:migration remove_status_from_users_table

重新命名欄位:

php artisan make:migration rename_status_on_users_table

建立 pivot(多對多關聯)資料表:

php artisan make:migration create_product_tag_table

編輯完成後,執行 php artisan migrate 將變更套用至資料庫


🧪 使用 Tinker:php artisan tinker

Laravel 內建互動式 REPL 工具,可操作模型、測試邏輯等。

啟動 Tinker:

php artisan tinker

範例操作:

>>> $users = App\Models\User::all();
>>> $users

離開 Tinker:輸入 exitquit

✅ Tinker 適合用於開發階段快速測試模型邏輯與資料操作


📌 補充

  • 若 Artisan 指令執行異常,使用以下指令清除快取:
php artisan optimize:clear
  • 可使用 php artisan list 查看所有支援指令