Laravel - Konsola rzemieślnicza

Framework Laravel zapewnia trzy podstawowe narzędzia do interakcji za pośrednictwem wiersza poleceń, a mianowicie: Artisan, Ticker i REPL. W tym rozdziale szczegółowo omówiono Artisan.

Wprowadzenie do rzemieślnika

Artisan jest interfejsem wiersza poleceń często używanym w Laravel i zawiera zestaw pomocnych poleceń do tworzenia aplikacji internetowych.

Przykład

Oto lista kilku poleceń w Artisan wraz z ich funkcjami -

To start Laravel project

php artisan serve

To enable caching mechanism

php artisan route:cache

To view the list of available commands supported by Artisan

php artisan list

To view help about any command and view the available options and arguments

php artisan help serve

Poniższy zrzut ekranu przedstawia dane wyjściowe podanych powyżej poleceń -

Pisanie poleceń

Oprócz poleceń wymienionych w programie Artisan, użytkownik może również utworzyć polecenie niestandardowe, które może być używane w aplikacji internetowej. Należy pamiętać, że polecenia są przechowywane w plikachapp/console/commands directory.

Domyślne polecenie do tworzenia polecenia zdefiniowanego przez użytkownika jest pokazane poniżej -

php artisan make:console <name-of-command>

Po wpisaniu powyższego polecenia możesz zobaczyć dane wyjściowe, jak pokazano na zrzucie ekranu podanym poniżej -

Plik utworzony dla DefaultCommand nazywa się DefaultCommand.php i pokazano poniżej -

<?php

namespace App\Console\Commands;
use Illuminate\Console\Command;

class DefaultCommand extends Command{
   /**
      * The name and signature of the console command.
      *
      * @var string
   */
   
   protected $signature = 'command:name';
   
   /**
      * The console command description.
      *
      * @var string
   */
   
   protected $description = 'Command description';
   
   /**
      * Create a new command instance.
      *
      * @return void
   */
   
   public function __construct() {
      parent::__construct();
   }
   
   /**
      * Execute the console command.
      *
      * @return mixed
   */
   
   public function handle() {
      //
   }
}

Ten plik zawiera podpis i opis polecenia zdefiniowanego przez użytkownika. Funkcja publiczna o nazwiehandlewykonuje funkcje po wykonaniu polecenia. Te polecenia są rejestrowane w plikuKernel.php w tym samym katalogu.

Możesz również utworzyć harmonogram zadań dla polecenia zdefiniowanego przez użytkownika, jak pokazano w poniższym kodzie -

<?php

namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;

class Kernel extends ConsoleKernel {
   /**
      * The Artisan commands provided by your application.
      *
      * @var array
   */
   
   protected $commands = [
      // Commands\Inspire::class,
      Commands\DefaultCommand::class
   ];
   
   /**
      * Define the application's command schedule.
      *
      * @param \Illuminate\Console\Scheduling\Schedule $schedule
      * @return void
   */
   
   protected function schedule(Schedule $schedule) {
      // $schedule->command('inspire')
      // ->hourly();
   }
}

Zauważ, że harmonogram zadań dla danego polecenia jest zdefiniowany w funkcji o nazwie schedule, który zawiera parametr do planowania zadań, które mają hourly parametr.

Polecenia są rejestrowane w tablicy poleceń, która zawiera ścieżkę i nazwę poleceń.

Po zarejestrowaniu polecenia jest ono wymienione w poleceniach rzemieślnika. Wartości zawarte w sekcji podpisu i opisu zostaną wyświetlone po wywołaniu atrybutu pomocy określonej komendy.

Zobaczmy, jak wyświetlić atrybuty naszego polecenia DefaultCommand. Powinieneś użyć polecenia, jak pokazano poniżej -

php artisan help DefaultCommand