Laravel 4 - 创建工匠命令


Laravel 4 - Creating an artisan command

这是我第一次尝试创建一个工匠命令,它应该负责执行另一个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() { ... }