在我的路线中我有
Route::get('artisan/{command}/{param}', 'CacheController@show');
在我的控制器中我有
public function show($id, $param)
{
$artisan = Artisan::call($id,['flag'=>$param]);
$output = Artisan::output();
return $output;
}
我希望能够通过访问route:cache
或cache:clear
来致电domain.com/artisan/cache/clear
和route/cache
但是当我打电话给它时,它会返回类似这样的内容
命令"缓存"没有定义。
它只调用缓存,而不是cache:clear
出错的可能性是什么?
答案 0 :(得分:1)
当您调用id
command
所以你的功能需要看起来像这样
public function show($command, $param) {
$artisan = Artisan::call($command,['flag'=>$param]);
$output = Artisan::output();
return $output;
}
因此,您的网址可能如下domain.com/artisan/cache/clear
,这意味着您正在调用此路线
Route::get('artisan/{command}/{param}', 'CacheController@show');
因此,您需要$command
$id
内容
答案 1 :(得分:0)
像这样修改你的代码:
$artisan = \Artisan::call($command.":".$param);
$output = \Artisan::output();
return $output;
Flag参数用于传递artisan命令的参数。