首页 > php框架 > Laravel > 正文

Laravel - Artisan 控制台

PHPz
发布: 2024-08-27 13:12:12
原创
545 人浏览过

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

工匠简介

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

示例

这里列出了 Artisan 中的几个命令及其各自的功能 -

启动 Laravel 项目

php artisan serve
登录后复制

启用缓存机制

php artisan route:cache
登录后复制

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

php artisan list
登录后复制

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

php artisan help serve
登录后复制

以下屏幕截图显示了上面给出的命令的输出 -

Artisan Help Serve

编写命令

除了 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 = &#39;command:name&#39;;
   
   /**
      * The console command description.
      *
      * @var string
   */
   
   protected $description = &#39;Command description&#39;;
   
   /**
      * 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&#39;s command schedule.
      *
      * @param \Illuminate\Console\Scheduling\Schedule $schedule
      * @return void
   */
   
   protected function schedule(Schedule $schedule) {
      // $schedule->command(&#39;inspire&#39;)
      // ->hourly();
   }
}
登录后复制

请注意,给定命令的任务调度是在名为 schedule 的函数中定义的,其中包含一个用于调度任务的参数,该参数采用 hourly 参数。

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

命令注册后,就会在 Artisan 命令中列出。当您调用指定命令的帮助属性时,将显示签名和描述部分中包含的值。

让我们看看如何查看命令DefaultCommand的属性。您应该使用如下所示的命令 -

php artisan help DefaultCommand
登录后复制


以上是Laravel - Artisan 控制台的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板