Laravel Artisan控制台

Laravel Artisan控制台

Laravel框架提供了三种主要的命令行交互工具,分别是: Artisan,TickerREPL 。本章详细介绍了Artisan。

Artisan简介

Artisan是在Laravel中经常使用的命令行界面,它包含一组有用的命令来开发Web应用程序。

示例

以下是Artisan中的一些命令及其相应的功能列表。

启动Laravel项目

php artisan serve

启用缓存机制

php artisan route:cache

查看Artisan支持的可用命令列表

php artisan list

查看任何命令的帮助并查看可用的选项和参数

php artisan help serve

下图显示了上述命令的输出结果−

Laravel Artisan控制台

写命令

除了Artisan中列出的命令外,用户还可以创建自定义命令,这些命令可以在Web应用程序中使用。请注意,命令存储在 app/console/commands 目录中。

创建用户定义命令的默认命令如下所示 –

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

一旦您输入以上给定的命令,您可以看到如下所示的屏幕截图中显示的输出。

Laravel Artisan控制台

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
   */

   protecteddescription = '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\Scheduleschedule
      * @return void
   */

   protected function schedule(Schedule schedule) {
      //schedule->command('inspire')
      // ->hourly();
   }
}

请注意,给定命令的任务计划在名为 schedule 的函数中定义,该函数包括一个用于计划任务的参数,参数值为 hourly

命令被注册在命令数组中,其中包括命令的路径和名称。

一旦命令被注册,它将显示在Artisan命令中。当您调用指定命令的帮助属性时,签名和描述部分包含的值将被显示出来。

让我们看看如何查看 DefaultCommand 命令的属性。您应该按照下面的示例使用命令:

php artisan help DefaultCommand

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程