30

在 Symfony2 命令中设置退出状态代码的正确方法是什么?

在普通的 php 中,您可以使用exit(123). 但我猜 Symfony2 有一个面向对象的方式。那正确吗?我在文档上找不到任何东西。

我需要这个主要是因为我希望能够在 Linux 中做这样的事情:app/console my:command || { echo "Something went wrong, I'm gonna call handle_disaster now"; handle_disaster; }

4

1 回答 1

53

在基Command类中:

    if ($this->code) {
        $statusCode = call_user_func($this->code, $input, $output);
    } else {
        $statusCode = $this->execute($input, $output);
    }

    return is_numeric($statusCode) ? (int) $statusCode : 0;

execute()因此,只需从您的函数返回退出代码。只要它是数字值,您的控制台命令就会退出此代码。

于 2013-08-26T08:46:26.653 回答