生成 Artisan 命令而不是 "php artisan serve"

Generate Artisan command instead of "php artisan serve"

我想做一个像

这样的别名

php artisan go

而不是

php artisan serve

我会很感激任何其他想法:-)。我也读过这个 link 并搜索了很多但它不是很清楚,其他问题是关于制作 class.env 文件等

提前致谢

更新 这个问题不是 this 的重复问题,因为它不包含调用 php artisan 本身。

使用以下命令创建命令:

php artisan make:command GoCommand

在 class 中添加:

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Illuminate\Support\Facades\Artisan;
use Symfony\Component\Console\Output\ConsoleOutput;

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

    /**
     * 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()
    {
        $output = new ConsoleOutput;
        $output->writeln("Laravel development server started: <http://127.0.0.1:8000>");
        Artisan::call('serve');
        Artisan::output();
    }
}

使用命令:

php artisan go

访问:http://127.0.0.1:8000/

并在您的控制台中查看输出。