🔹 เกริ่นนำ
Artisan คือ command-line interface (CLI) ของ Laravel ที่ช่วยให้เราสามารถจัดการงานต่าง ๆ ได้ง่ายขึ้น เช่น การ migrate database, clear cache, สร้าง controller หรือแม้แต่สร้างคำสั่งของเราเอง (Custom Command) เพื่อทำงานเฉพาะด้าน เช่น การส่งอีเมลอัตโนมัติ หรือจัดการข้อมูล
บทนี้จะสอนวิธีสร้าง Custom Artisan Command อย่างเป็นระบบ พร้อมตัวอย่างการใช้งานจริง
🔸 การสร้าง Command
php artisan make:command GreetUser
- จะสร้างไฟล์ที่
app/Console/Commands/GreetUser.php
🔸 โครงสร้างเบื้องต้นของ Command
protected $signature = 'greet:user {name}';
protected $description = 'แสดงคำทักทายผู้ใช้';
public function handle()
{
$name = $this->argument('name');
$this->info("สวัสดีคุณ $name!");
}
🔸 การใช้งาน Command
php artisan greet:user Somchai
ผลลัพธ์:
สวัสดีคุณ Somchai!
🔸 การรับ input เพิ่มเติม และ options
protected $signature = 'greet:user {name} {--uppercase}';
public function handle()
{
$name = $this->argument('name');
if ($this->option('uppercase')) {
$name = strtoupper($name);
}
$this->info("Hello $name");
}
💡 คุณสามารถเพิ่ม option, confirmation, progress bar และการเขียน log ได้ภายใน Command