Beispiel #1
0
use Slince\Console\Command;
use Slince\Console\Console;
use Slince\Console\Context\Io;
use Slince\Console\Context\Argv;
use Slince\Console\Context\Option;
use Slince\Console\Question\Question;
use Slince\Console\Question\ConfirmQuestion;
use Slince\Console\Question\ChoiceQuestion;
include __DIR__ . '/../vendor/autoload.php';
class SayHalloCommand extends Command
{
    protected $name = 'hello';
    function configure()
    {
        $this->setDescription('Say hello to someone');
        $this->addArgument('name2', Option::VALUE_REQUIRED);
        $this->addArgument('age', Option::VALUE_OPTIONAL);
        $this->addOption('yell', Option::VALUE_REQUIRED, 'if set will output uppercase');
    }
    function execute(Io $io, Argv $argv)
    {
        $question = new ChoiceQuestion('Whats your favorite sports', ['baskerball', 'foot ball', 'ping pang'], 0);
        $question->setMaxAttempts(3);
        $question->setMultiSelect(true);
        $answer = $this->getHelper('Question')->ask($question);
        $io->write(sprintf("You like %s", implode(', ', $answer)));
    }
}
$console = new Console();
$console->addCommand(new SayHalloCommand());
$console->run();