Laravel工匠以编程方式运行命令,任何参数都没有键

时间:2017-08-05 03:43:00

标签: php laravel laravel-5.4 artisan

在我的申请中 ,我想在CLI之外模拟php artisan命令,我在控制器内部进行操作。

我能够运行:

$execute = Artisan::call($commandPart[0], [
        'companyId' => $commandPart[1]
]);

但是,如果我指定参数的关键字,它就可以正常工作。 同时,我想要实现的是传入没有键参数的命令列表,因为我希望它是灵活的。

我试过了,

$execute = Artisan::call($commandPart[0], [
    $commandPart[1]
]);

$command = 'organization:tree_readjust 1';
$execute = Artisan::call($command);

然而,这两种情况都会产生错误。 对此有何解决方案?

谢谢你。

2 个答案:

答案 0 :(得分:0)

根据documentation submit。所以,首先确保$('form').on('submit', function(e) { e.preventDefault(); // If '#userLogin' is the submit button for the form, just move the // code for the `$('#userLogin').click()` event handler in here. showDiv(); }); 是有效命令,你可以在第二个参数上传递数组参数。例如:

The call method accepts the name of the command as the first argument, and an array of command parameters as the second argument

编辑:

你不能在没有钥匙的情况下调用参数。为了灵活性,我认为您可以创建一些逻辑来制作数组参数并将其传递给工匠电话$commandPart[0]

答案 1 :(得分:0)

在控制器中使用命令之前,不要忘记添加 Artisan Facades。

use Illuminate\Support\Facades\Artisan;