Учебники

Laravel — Ремесленная Консоль

Платформа Laravel предоставляет три основных инструмента для взаимодействия через командную строку, а именно: Artisan, Ticker и REPL . В этой главе подробно рассказывается об Artisan.

Введение в Artisan

Artisan — это интерфейс командной строки, часто используемый в Laravel, и он включает в себя набор полезных команд для разработки веб-приложения.

пример

Вот список нескольких команд в Artisan вместе с их соответствующими функциями —

Чтобы начать проект Laravel

php artisan serve

Включить механизм кэширования

php artisan route:cache

Для просмотра списка доступных команд, поддерживаемых Artisan

php artisan list

Для просмотра справки о любой команде и просмотра доступных параметров и аргументов

php artisan help serve

На следующем снимке экрана показан вывод приведенных выше команд —

Artisan Help Serve

Написание команд

В дополнение к командам, перечисленным в Artisan, пользователь также может создать собственную команду, которую можно использовать в веб-приложении. Обратите внимание, что команды хранятся в каталоге app / console / commands .

Команда по умолчанию для создания пользовательской команды показана ниже —

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

После того, как вы введете приведенную выше команду, вы сможете увидеть вывод, как показано на скриншоте, приведенном ниже —

defaultCommand

Файл, созданный для DefaultCommand, называется DefaultCommand.php и показан ниже:

<?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() {
      //
   }
}

Этот файл содержит подпись и описание для команды, определенной пользователем. Открытая функция с именем handle выполняет функциональные возможности при выполнении команды. Эти команды зарегистрированы в файле Kernel.php в том же каталоге.

Вы также можете создать расписание задач для определенной пользователем команды, как показано в следующем коде —

<?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();
   }
}

Обратите внимание, что расписание задач для данной команды определено в функции с именем schedule , которая включает в себя параметр для планирования задач, который принимает почасовой параметр.

Команды зарегистрированы в массиве команд, который включает путь и имя команд.

Как только команда зарегистрирована, она указана в командах Artisan. Значения, включенные в раздел подписи и описания, будут отображаться при вызове атрибута справки указанной команды.

Давайте посмотрим, как просмотреть атрибуты нашей команды DefaultCommand . Вы должны использовать команду, как показано ниже —