pastuhov / php-exec-command
Simple php command executor with param binding.
Installs: 201 287
Dependents: 2
Suggesters: 0
Security: 0
Stars: 25
Watchers: 1
Forks: 2
Open Issues: 0
Requires
- php: >=5.3.0
Requires (Dev)
- phpunit/phpunit: 4.*
- scrutinizer/ocular: ~1.1
This package is not auto-updated.
Last update: 2024-11-09 18:43:26 UTC
README
Simple php command executor with param binding.
Install
Via Composer
$ composer require pastuhov/php-exec-command
Features
- light weight
- param binding
- throws an exception if return status >0
- redirect stderr to stdout if needed
Usage
$output = Command::exec( 'echo {phrase}', [ 'phrase' => 'hello' ] ); // $output = 'hello'
or
$output = Command::exec( 'echo {phrase}', [ 'phrase' => [ 'hello', 'world' ] ] ); // $output = 'hello world'
or
try { Command::exec('locate {parody}', [ 'parody' => [ 'pink_unicorn' ] ] ); echo "unicorn was found!"; } catch (\pastuhov\Command\CommandException $e) { echo "can't find unicorn :("; }
By default, all arguments are escaped using
escapeshellarg.
If you need to pass unescaped arguments, use {!name!}
, like so:
Command::exec('echo {!path!}', ['path' => '$PATH']);
Testing
$ composer test
or
$ phpunit
Security
If you discover any security related issues, please email kirill@pastukhov.su instead of using the issue tracker.
Credits
License
GNU General Public License, version 2. Please see License File for more information.