Julio Montoya ae4afdabd6 Updating vendors пре 11 година
..
Command 224a0e666e Updating vendors пре 11 година
Descriptor d7041815fc Updating vendors пре 11 година
Event 321ce65f18 Updating vendors пре 11 година
Formatter 224a0e666e Updating vendors пре 11 година
Helper 321ce65f18 Updating vendors пре 11 година
Input ae4afdabd6 Updating vendors пре 11 година
Output 224a0e666e Updating vendors пре 11 година
Resources 32682a9ca8 Updating vendor пре 12 година
Tester fd98b58956 Updating vendor пре 11 година
Tests ae4afdabd6 Updating vendors пре 11 година
Application.php 321ce65f18 Updating vendors пре 11 година
CHANGELOG.md d7041815fc Updating vendors пре 11 година
ConsoleEvents.php 224a0e666e Updating vendors пре 11 година
LICENSE 32682a9ca8 Updating vendor пре 12 година
README.md 32682a9ca8 Updating vendor пре 12 година
Shell.php 5836fa5f19 Updating vendors пре 11 година
composer.json 224a0e666e Updating vendors пре 11 година
phpunit.xml.dist 32682a9ca8 Updating vendor пре 12 година

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