Php 控制台。在特定命令上终止事件

Php 控制台。在特定命令上终止事件,php,symfony,events,console,Php,Symfony,Events,Console,我刚刚发现它在Symfony中存在一个ConsoleEvents::TEMINATE事件。 我想使用它在命令执行后执行一些额外的过程(而不是延迟命令) 但事实上,我希望在特定命令完成时执行某些进程,而不是针对所有命令(因为我认为所有命令都会触发consoleevent.terminate) 我真的不知道怎么做 注意。您可以从ConsoleTerminateEvent 这几乎是控制台组件文档中的复制粘贴。使用完整的symfony注册监听器看起来有点不同,但您应该明白这一点 $dispatcher-

我刚刚发现它在Symfony中存在一个ConsoleEvents::TEMINATE事件。 我想使用它在命令执行后执行一些额外的过程(而不是延迟命令)

但事实上,我希望在特定命令完成时执行某些进程,而不是针对所有命令(因为我认为所有命令都会触发consoleevent.terminate)

我真的不知道怎么做

注意。

您可以从
ConsoleTerminateEvent
这几乎是控制台组件文档中的复制粘贴。使用完整的symfony注册监听器看起来有点不同,但您应该明白这一点

$dispatcher->addListener(
    ConsoleEvents::TERMINATE,
    function(ConsoleTerminateEvent $event) {
        $command = $event->getCommand();

        // if it's not the command you want
        if (!$command instanceof YourDesiredCommand) {
            return;
        }

        // put your logic here
    }
);