Julio Montoya c36303a24b Updating vendors vor 12 Jahren
..
Command 32682a9ca8 Updating vendor vor 12 Jahren
Event fd98b58956 Updating vendor vor 12 Jahren
Formatter 32682a9ca8 Updating vendor vor 12 Jahren
Helper 1b860afcd9 Updatinv vendors vor 12 Jahren
Input bae4ded345 Updating vendors vor 12 Jahren
Output 35463e4880 Updating vendors vor 12 Jahren
Resources 32682a9ca8 Updating vendor vor 12 Jahren
Tester fd98b58956 Updating vendor vor 12 Jahren
Tests c36303a24b Updating vendors vor 12 Jahren
.gitignore 14a700d00a updating vendors vor 12 Jahren
Application.php 3015eb9afa Updating vendors vor 12 Jahren
CHANGELOG.md 1b860afcd9 Updatinv vendors vor 12 Jahren
ConsoleEvents.php fd98b58956 Updating vendor vor 12 Jahren
LICENSE 32682a9ca8 Updating vendor vor 12 Jahren
README.md 32682a9ca8 Updating vendor vor 12 Jahren
Shell.php 32682a9ca8 Updating vendor vor 12 Jahren
composer.json fd98b58956 Updating vendor vor 12 Jahren
phpunit.xml.dist 32682a9ca8 Updating vendor vor 12 Jahren

README.md

Console Component

Console eases the creation of beautiful and testable command line interfaces.

The Application object manages the CLI application:

use Symfony\Component\Console\Application;

$console = new Application();
$console->run();

The run() method parses the arguments and options passed on the command line and executes the right command.

Registering a new command can easily be done via the register() method, which returns a Command instance:

use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;

$console
    ->register('ls')
    ->setDefinition(array(
        new InputArgument('dir', InputArgument::REQUIRED, 'Directory name'),
    ))
    ->setDescription('Displays the files in the given directory')
    ->setCode(function (InputInterface $input, OutputInterface $output) {
        $dir = $input->getArgument('dir');

        $output->writeln(sprintf('Dir listing for <info>%s</info>', $dir));
    })
;

You can also register new commands via classes.

The component provides a lot of features like output coloring, input and output abstractions (so that you can easily unit-test your commands), validation, automatic help messages, ...

Tests

You can run the unit tests with the following command:

$ cd path/to/Symfony/Component/Console/
$ composer.phar install --dev
$ phpunit

Third Party

Resources/bin/hiddeninput.exe is a third party binary provided within this component. Find sources and license at https://github.com/Seldaek/hidden-input.

Resources

The Console Component

How to create a Console Command