Process Component
The Process component executes commands in sub-processes.
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign up…le" to detach a subprocess (andrei0x309) This PR was merged into the 5.2-dev branch. Discussion ---------- [Process] allow setting options esp. "create_new_console" to detach a subprocess Process.php to include support for create_new_console (Windows ONLY) | Q | A | ------------- | --- | Branch? | master <!-- see below --> | Bug fix? | no | New feature? | yes <!-- please update src/**/CHANGELOG.md files --> | Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files --> | Tickets | #36583 <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead --> | License | MIT | Doc PR | symfony/symfony-docs#... <!-- required for new features --> Based on this issue: symfony/symfony#36583 I created a quick repo [ https://github.com/andrei0x309/tets_sym_proc]( https://github.com/andrei0x309/tets_sym_proc) to illustrate how this feature can be used, it essentially lets you run something even if your main script has terminated. It is useful if you want to create something like `new Process(['php', 'script_with_long_execution_time.php']);` This was impossible to do on windows until the **create_new_console** flag was added in PHP 7.4.4. With this feature Process can be used like this: ``` // Start a process and detach form it on Win only $process = new Process(['php', 'worker.php']); $process->setOptions(["create_new_console" => true]); // New method I added $process->disableOutput(); $process->start(); Process Class behavior will never change if the user doesn't use setWinOptions() ``` Commits ------- e9ab235b66 [Process] allow setting options esp. "create_new_console" to detach a subprocess
The Process component executes commands in sub-processes.