2014-09-26 272 views
0

只是一個關於任務調度和Bolt CM擴展的快速問題。Cron螺栓工作

文檔:https://docs.bolt.cm/v20/tasks

當添加任務調度到延伸,並收聽具有類以外的地方指定?

use Bolt\CronEvents; 

$this->app['dispatcher']->addListener(CronEvents::CRON_INTERVAL, array($this, 'myJobCallbackMethod')); 

class MyExtension extends \Bolt\BaseExtension { 

    // ... 

還是需要在初始化函數中聲明?

use Bolt\CronEvents; 

class MyExtension extends \Bolt\BaseExtension { 

    public function initialize() { 
     $this->app['dispatcher']->addListener(CronEvents::CRON_INTERVAL, array($this, 'myJobCallbackMethod')); 
    } 

    // ... 

我認爲是後者,因爲$this外的類是對象上下文之外。
該文檔使它看起來好像直接遵循,所以我想仔細檢查一下。

回答

1

你是對的,$this->app['dispatcher']->addListener()調用確實需要在類上下文中。

過度簡化文檔。

+0

更新例如被推到了這裏回購:https://github.com/bolt/bolt-docs/blob/master/source/tasks。 MD – Gawain 2014-09-26 11:38:31

0

我在初始化函數得到它,它工作正常

public function initialize() 
{ 
    $this->app['dispatcher']->addListener(CronEvents::CRON_DAILY, array($this, 'run')); 

} 

public function run(){ 
// code to run 
}