Доступ к вводу аргументов через консольную команду Artisan - PullRequest
0 голосов
/ 17 октября 2019

Я хочу выполнить свою команду следующим образом

php artisan update:code --code=123

Я хочу получить код из первого аргумента - кажется, я не могу найти способ сделать это на сайте Laravel.

<?php

namespace App\Console\Commands;
use App\User;
use Illuminate\Console\Command;

class updateCode extends Command
{

    protected $signature = 'update:code {code}';


    protected $description = 'Update Code ... ';

    public function __construct()
    {
        parent::__construct();
    }

    public function handle()
    {

        $code         = $this->option('code');
        $this->info($code);
        $user         = User::where('type','Admin')->first();
        $user->code   = bcrypt($code);
        $user->active = 1;
        $user->save();

        $this->info($user);

    }
}

Я продолжал получать

Опция "--code" не существует.

Нужно ли мне также определять свой вариант?

Как я могу просто быстро получить доступ к первому аргументу?

Ответы [ 2 ]

2 голосов
/ 17 октября 2019

{code} для аргументов . Для вариантов это {--code} или {--code=}:

// option as switch:
protected $signature = 'update:code {--code}';
// option with value:
protected $signature = 'update:code {--code=}';
1 голос
/ 17 октября 2019

Просто используйте

php artisan update:code 123
...