Lumen make:command

ⅰ亾dé卋堺 提交于 2019-12-29 18:36:29

问题


I'm trying to execute code within my Lumen install via the command line. In full Laravel , I've read that you can use commands to achieve this via "make:command", but Lumen does not seem to support this command.

Is there anyway to enable this command? Failing that, what's the best way of running code from the CLI in Lumen?

Thanks


回答1:


You can use the artisan CLI in Lumen as the same way as in Laravel but with fewer built-in commands. To see all built-in commands, use the php artisan command in Lumen.

Although there is no make:command command at Lumen, you can create your custom command:

  • Add new command class inside the app/Console/Commands folder, you can use the sample class template of the framework serve command

  • Register your custom command by adding your created class to the $commands member inside the app/Console/Kernel.php file.

Except the command generating, you can use the Laravel docs for commands when working with Lumen.




回答2:


When you create your command class use this:

<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;

Instead of what was described above about using serve command example




回答3:


Here is a template for a new command. You can just copy and paste this in to a new file and start working. I tested it on lumen 5.7.0

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;

class CommandName extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'commandSignature';

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

        $this->info('hello world.');
    }
}

Then register it on the Kernel.php file.

/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands = [
   \App\Console\Commands\CommandName::class
];


来源:https://stackoverflow.com/questions/30251065/lumen-makecommand

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!