В laravel, как я могу передать многомерный массив в качестве опции для команды ремесленника? - PullRequest
1 голос
/ 07 июня 2019

Я пытаюсь запустить команду laravel "php artisan set: fields" в cmd. Как я могу передать массив в команде ??

namespace App\Console\Commands\Scripts;

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

class SetFields extends Command {

   protected $signature = 'set:fields {user_id} {--data_array=*}';
   protected $description = '';

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

   public function handle() {

       $user_id = $this->argument('user_id');
       $metafield_array = $this->option('data_array');
       ....
       code_is_here
   }
 }

У меня есть массив

$data = [
         ["key"=>"key1","value"=>1],
         ["key"=>"key2","value"=>2], 
         ["key"=>"key3","value"=>3]
        ];

Artisan::call('set:fields', [
        'user_id' => 1,
        '--data_array' => $data
    ]);

это работает. Но я хочу запустить эту команду в cmd, как я могу передать массив в команде?

...