Quelle est la différence entre les Arguments et les Options?

Je ne suis pas vraiment sûr à quel niveau cette terminologie existe, mais dans le framework PHP Laravel, il existe un outil de ligne de commande appelé Artisan qui est utilisé pour créer des cronjobs. (aka commandes) Lorsque vous créez une commande. Vous pouvez spécifier des arguments et des options comme ceci:

/**
 * Get the console command arguments.
 *
 * @return array
 */
protected function getArguments()
{
    return array(
        array('example', InputArgument::REQUIRED, 'An example argument.'),
    );
}

/**
     * Get the console command options.
     *
     * @return array
     */
    protected function getOptions()
    {
        return array(
            array('example', null, InputOption::VALUE_OPTIONAL, 'An example option.', null),
        );
    }

Quelle est la différence entre les deux?

22
demandé sur Himmators 2013-07-24 18:44:19

1 réponses

Jetez un oeil à l'aide artisan migrate:make:

Usage:
 migrate:make [--bench[="..."]] [--create] [--package[="..."]] [--path[="..."]] [--table[="..."]] name

Arguments:
 name                  The name of the migration

Options:
 --bench               The workbench the migration belongs to.
 --create              The table needs to be created.
 --package             The package the migration belongs to.
 --path                Where to store the migration.
 --table               The table to migrate.
 --help (-h)           Display this help message.
 --quiet (-q)          Do not output any message.
 --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
 --version (-V)        Display this application version.
 --ansi                Force ANSI output.
 --no-ansi             Disable ANSI output.
 --no-interaction (-n) Do not ask any interactive question.
 --env                 The environment the command should run under.

Argument est quelque chose que vous devez généralement fournir au moins un, dans ce cas, vous devez fournir le nom de la migration ou la commande déclenchera une erreur.

L'Option est, évidemment, facultative, quelque chose que vous utilisez pour modifier le comportement de la commande.

23
répondu Antonio Carlos Ribeiro 2013-07-24 14:53:44