这是我第一次尝试创建一个工匠命令,它应该负责执行另一个php函数。到目前为止,我所做的只是使用以下命令创建命令: php artisan command:make PutItemsBackInStock
并为该命令创建了框架。另外,我在app/start/artisan.php
中添加了命令,以便Laravel知道它。
然后在PutItemsBackInStock
文件中,我声明了一个私有函数:
private function updateItemQty() { ... }
在我试图称之为public function fire()
下:
$this->updateItemQty();
这可能不是正确的方法,而我得到了这个错误:
[运行时异常] 参数不足。
然后我删除了受保护函数的块getArguments() and getOptions()
删除了该错误,但函数仍未触发。
问题是:我怎样才能让工匠命令来执行另一个功能?
看起来您没有正确设置参数。您需要让命令设置如下:
protected $name = 'your:command';
public function fire()
{
$this->updateItemQty();
}
protected function getArguments()
{
return [];
}
protected function getOptions()
{
return [];
}
private function updateItemQty() { ... }