Shell dispatcher handles dispatching CLI commands.
Consult /bin/cake.php for how this class is used in practice.
Constructor
Initializes the environment and loads the CakePHP core.
Create the given shell name, and set the plugin property
Dispatch a request.
If the input matches an alias, return the aliased shell name
Defines current working environment.
Check if a shell class exists for the given name.
For all loaded plugins, add a short alias
Add an alias for a shell command.
Dispatches a CLI request
Get shell to use, either plugin shell or application shell
Shows console help. Performs an internal dispatch to the CommandList Shell
Clear any aliases that have been set.
Run the dispatcher
Removes first argument and shifts other arguments up
Prints the currently installed version of CakePHP. Performs an internal dispatch to the CommandList Shell
__construct(array $args = [], bool $bootstrap = true)
Constructor
The execution of the script is stopped after dispatching the request with a status code of either 0 or 1 according to the result of the dispatch.
array $args optional the argv from PHP
bool $bootstrap optional Should the environment be bootstrapped.
_bootstrap(): void
Initializes the environment and loads the CakePHP core.
void_createShell(string $className, string $shortName): Cake\Console\Shell
Create the given shell name, and set the plugin property
string $className The class name to instantiate
string $shortName The plugin-prefixed shell name
Cake\Console\Shell_dispatch(array $extra = []): int|bool|null
Dispatch a request.
array $extra optional Extra parameters that you can manually pass to the Shell to be dispatched. Built-in extra parameter is :
int|bool|nullCake\Console\Exception\MissingShellMethodException_handleAlias(string $shell): string
If the input matches an alias, return the aliased shell name
string $shell Optionally the name of a plugin or alias
string_initEnvironment(): void
Defines current working environment.
voidCake\Core\Exception\CakeException_shellExists(string $shell): string|null
Check if a shell class exists for the given name.
string $shell The shell name to look for.
string|nulladdShortPluginAliases(): array
For all loaded plugins, add a short alias
This permits a plugin which implements a shell of the same name to be accessed Using the shell name alone
arrayalias(string $short, string|null $original = null): string|null
Add an alias for a shell command.
Aliases allow you to call shells by alternate names. This is most useful when dealing with plugin shells that you want to have shorter names for.
If you re-use an alias the last alias set will be the one available.
Aliasing a shell named ClassName:
$this->alias('alias', 'ClassName'); Getting the original name for a given alias:
$this->alias('alias'); string $short The new short name for the shell.
string|null $original optional The original full name for the shell.
string|nulldispatch(array $extra = []): int
Dispatches a CLI request
Converts a shell command result into an exit code. Null/True are treated as success. All other return values are an error.
array $extra optional Extra parameters that you can manually pass to the Shell to be dispatched. Built-in extra parameter is :
intfindShell(string $shell): Cake\Console\Shell
Get shell to use, either plugin shell or application shell
All paths in the loaded shell paths are searched, handles alias dereferencing
string $shell Optionally the name of a plugin
Cake\Console\ShellCake\Console\Exception\MissingShellExceptionhelp(): void
Shows console help. Performs an internal dispatch to the CommandList Shell
voidresetAliases(): void
Clear any aliases that have been set.
voidrun(array $argv, array $extra = []): int
Run the dispatcher
array $argv The argv from PHP
array $extra optional Extra parameters
intshiftArgs(): mixed
Removes first argument and shifts other arguments up
mixedversion(): void
Prints the currently installed version of CakePHP. Performs an internal dispatch to the CommandList Shell
voidList of connected aliases.
array<string, string>Contains arguments parsed from the command line.
array
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Console.ShellDispatcher.html