我正在使用Laravel设置一个新Task,此任务从其他类调用一个方法,该方法需要一个参数。
我一直在阅读Laravel中的文档,说我必须在{}
中的$ signature中包含该参数。
protected $signature = 'cmd:taskTest {id}';
在我的handle函数中(在命令类中)
public function handle()
{
WebController::downloadFile(); // downloadFile needs param
}
还有我的方法,它由handle调用。
public static function downloadFile($warehouseId){
//do something
}
我尝试在提示符下写这个:
php artisan cmd:taskTest 1
它返回一个错误,因为它需要ID来查找数据库中有关此ID的所有信息。
要创建命令,我运行了此命令:
php artisan make:command
答案 0 :(得分:2)
您可以使用argument
方法进行检索。
WebController::downloadFile($this->argument('id'));