Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 64a924d

Browse filesBrowse files
committed
feature #3756 [WCM][Console] Add Process Helper documentation (romainneutron)
This PR was merged into the master branch. Discussion ---------- [WCM][Console] Add Process Helper documentation | Q | A | ------------- | --- | Doc fix? | yes | New docs? | yes (symfony/symfony#10627) | Applies to | 2.5+ | Fixed tickets | n/a Commits ------- 1705231 [Console] Add Process Helper documentation
2 parents be4b9d3 + 1705231 commit 64a924d
Copy full SHA for 64a924d

File tree

Expand file treeCollapse file tree

6 files changed

+58
-0
lines changed
Filter options
Expand file treeCollapse file tree

6 files changed

+58
-0
lines changed

‎components/console/helpers/index.rst

Copy file name to clipboardExpand all lines: components/console/helpers/index.rst
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ The Console Helpers
99

1010
dialoghelper
1111
formatterhelper
12+
processhelper
1213
progressbar
1314
progresshelper
1415
table

‎components/console/helpers/map.rst.inc

Copy file name to clipboardExpand all lines: components/console/helpers/map.rst.inc
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
* :doc:`/components/console/helpers/dialoghelper`
22
* :doc:`/components/console/helpers/formatterhelper`
3+
* :doc:`/components/console/helpers/processhelper`
34
* :doc:`/components/console/helpers/progressbar`
45
* :doc:`/components/console/helpers/progresshelper`
56
* :doc:`/components/console/helpers/table`
+56Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
.. index::
2+
single: Console Helpers; Process Helper
3+
4+
Process Helper
5+
==============
6+
7+
.. versionadded:: 2.5
8+
The Process Helper was introduced in Symfony 2.5.
9+
10+
The Process Helper shows processes as they're running and reports
11+
useful information about process status.
12+
13+
To display process details, use the :class:`Symfony\\Component\\Console\\Helper\\ProcessHelper`
14+
and run your command with verbosity. For example, running the following code with
15+
a very verbose verbosity (e.g. -vv)::
16+
17+
use Symfony\Component\Process\ProcessBuilder;
18+
19+
$helper = $this->getHelperSet()->get('process');
20+
$process = ProcessBuilder::create(array('figlet', 'Symfony'))->getProcess();
21+
22+
$helper->run($output, $process);
23+
24+
will result in this output:
25+
26+
.. image:: /images/components/console/process-helper-verbose.png
27+
28+
It will result in more detailed output with debug verbosity (e.g. -vvv):
29+
30+
.. image:: /images/components/console/process-helper-debug.png
31+
32+
In case the process fails, debugging is easier:
33+
34+
.. image:: /images/components/console/process-helper-error-debug.png
35+
36+
There are three ways to use the process helper: using a command line string, an array
37+
of arguments that would be escaped or a :class:`Symfony\\Component\\Process\\Process`
38+
object.
39+
40+
You can display a customized error message using the third argument of the
41+
:method:`Symfony\\Component\\Console\\Helper\\ProcessHelper::run` method::
42+
43+
$helper->run($output, $process, 'The process failed :(');
44+
45+
A custom process callback can be passed as fourth argument, refer to the
46+
:doc:`Process Component </components/process>` for callback documentation::
47+
48+
use Symfony\Component\Process\Process;
49+
50+
$helper->run($output, $process, 'The process failed :(', function ($type, $data) {
51+
if (Process::ERR === $type) {
52+
// do something with the stderr output
53+
} else {
54+
// do something with the stdout
55+
}
56+
});
Loading
Loading
Loading

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.