Skip to content

Instantly share code, notes, and snippets.

@dhrrgn
Last active December 12, 2021 01:24
Show Gist options
  • Save dhrrgn/8847309 to your computer and use it in GitHub Desktop.
Save dhrrgn/8847309 to your computer and use it in GitHub Desktop.
Adding global Options/Arguments to Symfony Console Applications
#!/usr/bin/env php
<?php
use Symfony\Component\Console\Application;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Input\InputArgument;
require 'vendor/autoload.php';
$app = new Application;
// Add global Options to the Application
$app->getDefinition()->addOptions([
new InputOption('--env', '-e', InputOption::VALUE_OPTIONAL, 'The environment to operate in.', 'DEV'),
]);
// You could add global arguments as well
$app->getDefinition()->addArguments([
// Arguments Here
]);
// Add the commands.
$app->add(new SomeCommand);
// Run it.
$app->run();
@samjarrett
Copy link

you should actually extend the Application class instead

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment