# آموزش ساخت Artisan Command در لاراول Artisan یکی از ابزارهای قدرتمند فریمورک لاراول است که امکان اجرای دستورات مختلف را برای توسعهدهندگان فراهم میکند. ایجاد دستورات سفارشی با استفاده از Artisan میتواند به شما در مدیریت پروژهها و اتوماسیون کارها کمک کند. در این مقاله، نحوه ایجاد یک Artisan Command سفارشی را به صورت کامل بررسی خواهیم کرد. ## مراحل ساخت دستور سفارشی در Artisan ### 1. ساخت فایل دستور جدید برای ایجاد یک دستور جدید، کافی است از دستور زیر استفاده کنید: ```bash php artisan make:command CommandName ``` این دستور یک فایل جدید در مسیر `app/Console/Commands` ایجاد میکند. نام فایل برابر با نامی است که به جای `CommandName` وارد کردهاید. ### 2. تنظیمات اولیه فایل دستور فایل ایجاد شده شامل یک کلاس PHP است که از کلاس پایه `Command` ارثبری میکند. بخشهای اصلی این کلاس عبارتند از: - **خصوصیت `$signature`:** تعیین قالب دستور و آرگومانهای آن. - **خصوصیت `$description`:** توضیح کوتاه درباره عملکرد دستور. - **متد `handle()`:** منطق اصلی اجرای دستور. مثال: ```php info('سلام دنیا!'); } } ``` در مثال بالا، یک دستور ساده به نام `hello:world` تعریف شده که هنگام اجرا پیام "سلام دنیا!" را چاپ میکند. ### 3. ثبت دستور در Kernel برای استفاده از دستور، باید آن را در فایل `app/Console/Kernel.php` ثبت کنید: ```php protected $commands = [ \App\Console\Commands\HelloWorldCommand::class, ]; ``` این مرحله ضروری است تا لاراول بتواند دستور شما را شناسایی کند. ### 4. اجرای دستور سفارشی پس از ثبت، میتوانید دستور خود را اجرا کنید: ```bash php artisan hello:world ``` نتیجه اجرای این دستور پیام "سلام دنیا!" خواهد بود. ## نکات تکمیلی برای دستورات پیچیدهتر اگر بخواهید آرگومانها یا آپشنهایی به دستور اضافه کنید، میتوانید آنها را در `$signature` تعریف کرده و با متدهای `argument()` یا `option()` مقدارشان را دریافت کنید. مثال: ```php protected $signature = 'greet {name} {--yell}'; public function handle() { $name = $this->argument('name'); $greeting = "سلام {$name}!"; if ($this->option('yell')) { $greeting = strtoupper($greeting); } $this->info($greeting); } ``` این دستور با آرگومان و آپشن کار میکند و خروجی آن بسته به ورودی تغییر خواهد کرد. ## جمعبندی ایجاد دستورات سفارشی با Artisan یکی از قابلیتهای قدرتمند لاراول برای توسعهدهندگان است که امکان خودکارسازی وظایف مختلف را فراهم میکند. با استفاده از مراحل گفتهشده، شما میتوانید دستورات متنوعی طراحی کنید و بهرهوری پروژههای خود را افزایش دهید.