10000 [Console] Command Lifecycle explications by 94noni · Pull Request #5319 · symfony/symfony-docs · GitHub
[go: up one dir, main page]

Skip to content

[Console] Command Lifecycle explications #5319

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 4 commits into from
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
[Console] Command Lifecycle explications
  • Loading branch information
94noni committed May 26, 2015
commit c78eaa53fdc02fb4fd5f3980fc33fb8641781fb2
31 changes: 31 additions & 0 deletions components/console/introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,37 @@ This prints::

HELLO FABIEN

Command Lifecycle
~~~~~~~~~~~~~~~~

Commands have 3 lifecycle methods:

1. initialize($input, $output)
2. interact($input, $output)
3. execute($input, $output)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this empty line between term and definition is not allowed

Explications:

initialize($input, $output)

This method is executed before the interact() and the execute() methods.
It's main purpose is to initialize the variables used in the rest of
the command methods.

interact($input, $output)

This method is executed after initialize() and before execute(). Its purpose
is to check if some of the options/arguments are missing and interactively
ask the user for those values.

execute($input, $output)

This method is executed after interact() and initialize(). It usually
contains the logic to execute to complete this command task.

Note that ``initialize($input, $output)`` and ``interact($input, $output)``
methods are completely optional.

.. _components-console-coloring:

Coloring the Output
Expand Down
0