@@ -31,7 +31,7 @@ a command in a sub-process::
31
31
throw new \RuntimeException($process->getErrorOutput());
32
32
}
33
33
34
- print $process->getOutput();
34
+ echo $process->getOutput();
35
35
36
36
The component takes care of the subtle differences between the different platforms
37
37
when executing the command.
@@ -50,6 +50,26 @@ the contents of the output and
50
50
:method: `Symfony\\ Component\\ Process\\ Process::clearErrorOutput ` clears
51
51
the contents of the error output.
52
52
53
+ .. versionadded :: 2.5
54
+ The ``mustRun() `` method was introduced in Symfony 2.5.
55
+
56
+ With Symfony 2.5, you can use the :method: `Symfony\\ Component\\ Process\\ Process::mustRun `
57
+ method which throws a :class: `Symfony\\ Component\\ Process\\ Exception\\ ProcessFailedException `
58
+ when the process couldn't be executed successfully::
59
+
60
+ use Symfony\Component\Process\Exception\ProcessFailedException;
61
+ use Symfony\Component\Process\Process;
62
+
63
+ $process = new Process('ls -lsa');
64
+
65
+ try {
66
+ $process->mustRun();
67
+
68
+ echo $process->getOutput();
69
+ } catch (ProcessFailedException $e) {
70
+ echo $e->getMessage();
71
+ }
72
+
53
73
Getting real-time Process Output
54
74
--------------------------------
55
75
@@ -218,17 +238,17 @@ Process Idle Timeout
218
238
.. versionadded :: 2.4
219
239
The :method: `Symfony\\ Component\\ Process\\ Process::setIdleTimeout ` method
220
240
was introduced in Symfony 2.4.
221
-
241
+
222
242
In contrast to the timeout of the previous paragraph, the idle timeout only
223
243
considers the time since the last output was produced by the process::
224
244
225
245
use Symfony\Component\Process\Process;
226
-
246
+
227
247
$process = new Process('something-with-variable-runtime');
228
248
$process->setTimeout(3600);
229
249
$process->setIdleTimeout(60);
230
250
$process->run();
231
-
251
+
232
252
In the case above, a process is considered timed out, when either the total runtime
233
253
exceeds 3600 seconds, or the process does not produce any output for 60 seconds.
234
254
0 commit comments