5
私はsymfonyの標準版(2.3)でsymfonysのコンソールイベントにフックしようとしていますが、動作しません。symfonyでコンソールイベントを聞くにはどうしたらいいですか?
私は彼らのexampleに応じてリスナーを作成し、guides on event registration従ってください:メーリングリスト上
namespace Acme\DemoBundle\EventListener;
use Symfony\Component\Console\Event\ConsoleCommandEvent;
use Symfony\Component\Console\ConsoleEvents;
class AcmeCommandListener
{
public function onConsoleCommand(ConsoleCommandEvent $event) {
// get the output instance
$output = $event->getOutput();
// get the command to be executed
$command = $event->getCommand();
// write something about the command
$output->writeln(sprintf('Before running command <info>%s</info>', $command->getName()));
}
}
と誰かがサービスコンテナ内のイベントとして登録するために私に言いました。だから私はこれをした:
services:
kernel.listener.command_dispatch:
class: Acme\DemoBundle\EventListener\AcmeCommandListener
tags:
- { name: kernel.event_listener, event: console.command }
しかし、明らかにタグ付けが正しくないと私はそれの正しい名前を見つけることができません。どうすればいい?
あなたは 'php app/console'またはカスタムアプリケーションを使用していますか? – Touki
私はSymfonyの標準版を使用しており、 'app/console'コマンドが実行される前にイベントの発生を追加したいと考えています。私はすでにsymfonyのGoogleグループに尋ねました。誰かが私が上で試したようにサービスを使って設定する必要があると言いました。 – acme