2013-05-13 27 views
0

由於控制檯命令只允許聲明config()和​​函數,我如何聲明用戶定義的函數並調用它們?Symfony2 - 從命令訪問用戶定義的功能

+0

請特別說明你想要什麼?當從控制檯執行時,只調用'execute()'。 – 2013-05-13 14:43:45

+5

你可以聲明你喜歡的任何方法,並從執行中調用它們 – meouw 2013-05-13 14:45:18

回答

2

您可以定義和調用任何功能在您的Command類:

<?php 

namespace ...\Command; 

use ... 

class TestCommand extends Command 
{ 
    protected function execute(InputInterface $input, OutputInterface $output) 
    { 
     // ... 

     $this->mySuperFunction(); 
    } 

    protected function mySuperFunction() 
    { 
     // your code goes here... 
    } 
} 

如果你想輸出的東西,然後通過你的輸出對象給你的函數

$this->mySuperFunction($output); 

,並使用它:

protected function mySuperFunction(OutputInterface $output) 
{ 
    $output->write('hello world!'); 
}