johnitvn / cli-runtime
PHP runtime execute command library
Requires
- php: >=5.3.2
This package is auto-updated.
Last update: 2024-12-19 11:08:35 UTC
README
PHP runtime execute command library
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist johnitvn/cli-runtime "*"
or add
"johnitvn/cli-runtime": "*"
to the require section of your composer.json
file.
Usage
- Create processor
$workingdir = 'path/to/working_dir'; $process = new johnitvn\cliruntime\CliRuntimeProcess($workingdir);
If you set working dir is null in CliRuntimeProcess constructor current working dir will be path of file call CliRuntimeProcess
- Run command without return and display ouput
$process->run('echo Hello');
- Run command with capture output
$output = array(); $process->runCapture('echo Hello',$output); var_dump($output);
As example reference variable $ouput will get command output lines as array
- Run command with display out put
$process->runDisplayOutput('echo Hello');
runDisplayout()
will be run command and display out
- Command Builder
You can use
johnitvn\cliruntime\CommandBuidler
as utility for create command
Below is simple example with CommandBuilder:
$command = new johnitvn\cliruntime\CommandBuidler('echo'); $command->addParam('Hello world'); echo $command->getCommand();
and the result is:
echo Hello world
You can see below code snippet for understand how to use CommandBuilder class
$builder = new CommandBuidler('phpunit'); $builder->addFlag('v') ->addArgument('stop-on-failure') ->addArgument('configuration', 'phpunit.xml') ->addParam('TestCase.php'); echo $builder->getCommand();
And the result is:
phpunit TestCase.php -v --stop-on-failure --configuration=phpunit.xml
- CommandFinder (since version 1.0.2)
You can use
johnitvn\cliruntime\CommandFinder
as utility for finder real path of command under system environment variable
use johnitvn\cliruntime\CommandFinder;
$realCommand = CommandFinder::findCommand('composer');
echo $realCommand;
And result look like: C:\\xampp\php\composer
You can see the class comment for more detail about usage