Laravel 自建 artisan 命令

King_JW發表於2020-04-16

1.建立自定義命令檔案

php artisan make:command 你的的命令檔名字  eg:php artisan make:command SendEmails

php artisan make:command 你的的命令檔名字 eg:php artisan make:command SendEmails

2.開啟Kernel檔案註冊你的命令(不要問我為什麼打碼,不想給你看)

protected $commands = [

     Commands\SendEmails::class

 ];

3.開始構建你的程式碼


 /**

 * The name and signature of the console command.

 *

 * @var string

 */

 protected $signature = '你的命令名字  {--選項名字= :  幫助文件}';

 eg:

 protected $signature = 'sendEmails:generate  {--type= :  a生成商場文件;b生成Admin文件;}';

 /**

 * The console command description.

 *

 * @var string

 */

 protected $description = '整體命令的介紹';

 eg:

 protected $description = '傳送郵件';

 /**

 * Create a new command instance.

 *

 * @return void

 */
public function handle()

{

     //如果你想要你的命令好看點,可以加上      $this->output->progressStart(1);    他會為你輸出進度條,1為1個事件,你的命令裡面做了幾件事就輸入多大的數字,當然你做了2件事,你也可以寫為1或者3,這個決定於你。

    $message='這是你的訊息提示';

    //獲取輸入的選項   $this->option('type')) type為選項名字

    if (($this->option('type'))=='a') {

     //如果你的type=a 就做什麼事情

     $message='傳送a事件郵件成功';

    } elseif (($this->option('type'))=='b') {

      //如果你的type=b 就做什麼事情

     $message='傳送b事件郵件成功';

    }

     // 這個可以把你的訊息輸入出來

    $this->comment($message);

}

現在你就可以構建一條屬於自己的命令了。例如下面這樣子的:

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章