专栏首页LaravelCodeLaravel 控制台命令行artisan

Laravel 控制台命令行artisan

laravel 控制台命令行artisan

ArtisanLaravel自带的命令行接口,它提供了许多实用的命令来帮助你构建Laravel 应用。要查看所有可用的 Artisan 命令的列表,可以使用 list 命令:

php artisan list

每个命令包含了「帮助」界面,它会显示并概述命令的可用参数及选项。只需要在命令前面加上 help 即可查看命令帮助界面:

php artisan help migrate

编写命令# 除 Artisan 提供的命令之外,还可以构建自己的自定义命令。命令默认存储在app/Console/Commands 目录,你也可以修改 composer.json 文件来指定你想要存放的目录。 生成命令# 要创建一个新的命令,可以使用 Artisan 命令make:command。这个命令会在 app/Console/Commands 目录中创建一个新的命令类。 不必担心应用中不存在这个目录,因为它会在你第一次运行 Artisan 命令 make:command 时创建。生成的命令会包括所有命令中默认存在的属性和方法:

php artisan make:command HelloWord

命令生成后,应先填写类的 signaturedescription 属性,这会在使用list 命令的时候显示出来。执行命令时会调用 handle 方法,你可以在这个方法中放置命令逻辑。 修改生成的文件 如下:

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;

class HelloWorld extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'HelloWorld:say {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()
    {
        $name = $this->anticipate('What is your name?', ['Taylor', 'Dayle']);
        $password = $this->secret('What is the password?');
        if ($this->confirm('Do you wish to continue?')) {
            Log::info( $name  .$password);
            $this->info('hello '. $name .$this->argument('name'));
        }
    }
}

修改完代码 执行php artisan list查看当前命令是否生成 接着运行php artisan HelloWorld:say hedeqiang,应该会依次让你输入name 以及password 接着输入yes, 上面的代码其实并没有什么实际作用,这里只不过是演示一下命令如何生成,应用场景可能有好多,比如发送邮件,生成特定的文件等等...... ok,这就是如何使用laravel 生成artisan 命令 更多完整功能,请查阅官方文档laravel5.5中文文档

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 通过 Laravel 创建一个 Vue 单页面应用(四)

    我们在 第三部分 中放弃构建真实的用户端,而学习使用 Vue 路由获取组件数据的新方式。现在我们准备将注意力转移到为用户创建 CRUD(增删改查)的功能上 ——...

    hedeqiang
  • Yii2.0 RESTful API 基础配置教程

    这是安装Yii2.0的首选方法。如果你还没有安装 Composer,你可以按照这里的说明进行安装。

    hedeqiang
  • PHP处理XML数据

    生活中我们或多或少会遇到处理 XML 的数据,比如微信开发、或者我们传递一些数据比较多的内容,XML 是个不错的选择,但是通常XML需要处理,需要我们转换成数组...

    hedeqiang
  • Kubernetes 新玩法:在 YAML 中编程

    那么如何做性能测试?要么是通过编码的方式完成,写一堆脚本,用完即弃;要么是基于平台,在平台定义的流程中进行。对于后者,通常由于目标场景的复杂性,如部署特定的 w...

    我是阳明
  • Python+Selenium 技巧篇-svg标签内元素的xpath定位方式

    这种元素比较特殊,需要通过 name 属性来进行定位。 写法如下: //*[name()="svg"]//*[name()="image"]

    小蓝枣
  • tekton入门-trigger

    trigger使用户能够将事件有效负载中的字段映射到资源模板中。换句话说,这允许事件既可以建模也可以将实例化为Kubernetes资源。对于tektoncd/p...

    有点技术
  • 【EJB学习笔记】——实体Bean

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

    DannyHoo
  • Python操作Redis的最佳实践

    致码DevOps
  • bug诞生记——临时变量、栈变量导致的双杀

            这是《bug诞生记》的第一篇文章。本来想起个文艺点的名字,比如《Satan(撒旦)来了》,但是最后还是想让这系列的重心放在“bug的产生过程”和...

    方亮
  • python操作数据库

    pip install redispy 参考:https://www.cnblogs.com/john-xiong/p/12089103.html

    sofu456

扫码关注云+社区

领取腾讯云代金券