从Laravel 4.2控制器运行Artisan命令

5
我正在尝试从控制器执行一些自定义的艺匠命令,如下所示: Artisan::call('php artisan MyCustomCommand'); 但是在CLI中执行时很好用: php artisan MuCustomCommand.
我已经在app/start/artisan.php.中注册了该命令。 即使Artisan::call('php artisan --help');也不能工作。

当您运行php artisan时,是否看到了您的自定义命令? - Drudge Rajen
是的,我的自定义命令在命令列表中。 - suresh726
你有任何错误或其他问题吗? - Drudge Rajen
我认为使用laravel 4.2时,你无法通过代码运行命令。因为他们的文档也没有显示任何相关信息。而你所使用的代码是在laravel 5.1和5.2中可用的,在这里你必须在app/Console/Kernel.php文件中注册你的命令。 - Alankar More
为了解决这个错误,请在app.php文件中注册您的CustomCommand类,例如View、Request、Sessions都有别名。 - Alankar More
显示剩余2条评论
1个回答

8
您应该从控制器中像这样运行Artisan命令。示例:
 Artisan::call('migrate:install');

所以,你应该使用以下方式代替执行命令Artisan::call('php artisan MyCustomCommand');

你应该这样:

Artisan::call('MyCustomCommand');

这是相关it技术文档 希望对您有所帮助 :)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接