CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (Github)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • IRC
    • Slack
    • Paid Support
CakePHP

C CakePHP 5.1 Chiffon API

  • Project:
    • CakePHP
      • CakePHP
      • Authentication
      • Authorization
      • Chronos
      • Elastic Search
      • Queue
  • Version:
    • 5.1
      • 5.2
      • 5.1
      • 5.0
      • 4.6
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Namespaces

  • Global
  • Cake
    • Cache
    • Collection
    • Command
    • Console
      • Command
      • Exception
      • TestSuite
    • Controller
    • Core
    • Database
    • Datasource
    • Error
    • Event
    • Form
    • Http
    • I18n
    • Log
    • Mailer
    • Network
    • ORM
    • Routing
    • TestSuite
    • Utility
    • Validation
    • View

Class BaseCommand

Base class for console commands.

Provides hooks for common command features:

  • initialize Acts as a post-construct hook.
  • buildOptionParser Build/Configure the option parser for your command.
  • execute Execute your command with parsed Arguments and ConsoleIo
Abstract
Namespace: Cake\Console

Constants

  • int
    CODE_ERROR ¶
    1

    Default error code

  • int
    CODE_SUCCESS ¶
    0

    Default success code

Property Summary

  • $_eventClass protected
    string

    Default class name for new event objects.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Instance of the Cake\Event\EventManager this object is using to dispatch inner events.

  • $factory protected
    ?CommandFactoryInterface
  • $name protected
    string

    The name of this command.

Method Summary

  • __construct() public

    Constructor

  • abort() public

    Halt the current process with a StopException.

  • buildOptionParser() protected

    Hook method for defining this command's option parser.

  • defaultName() public static

    Get the command name.

  • dispatchEvent() public

    Wrapper for creating and dispatching events.

  • displayHelp() protected

    Output help content

  • execute() abstract public

    Implement this method with your command's logic.

  • executeCommand() public

    Execute another command with the provided set of arguments.

  • getDescription() public static

    Get the command description.

  • getEventManager() public

    Returns the Cake\Event\EventManager manager instance for this object.

  • getName() public

    Get the command name.

  • getOptionParser() public

    Get the option parser.

  • getRootName() public

    Get the root command name.

  • initialize() public

    Hook method invoked by CakePHP when a command is about to be executed.

  • run() public

    Run the command.

  • setEventManager() public

    Returns the Cake\Event\EventManagerInterface instance for this object.

  • setName() public

    Set the name this command uses in the collection.

  • setOutputLevel() protected

    Set the output level based on the Arguments.

Method Detail

__construct() ¶ public

__construct(Cake\Console\CommandFactoryInterface|null $factory = null)

Constructor

Parameters
Cake\Console\CommandFactoryInterface|null $factory optional

Command factory instance.

abort() ¶ public

abort(int $code = self::CODE_ERROR): never

Halt the current process with a StopException.

Parameters
int $code optional

The exit code to use.

Returns
never
Throws
Cake\Console\Exception\StopException

buildOptionParser() ¶ protected

buildOptionParser(Cake\Console\ConsoleOptionParser $parser): Cake\Console\ConsoleOptionParser

Hook method for defining this command's option parser.

Parameters
Cake\Console\ConsoleOptionParser $parser

The parser to be defined

Returns
Cake\Console\ConsoleOptionParser

defaultName() ¶ public static

defaultName(): string

Get the command name.

Returns the command name based on class name. For e.g. for a command with class name UpdateTableCommand the default name returned would be 'update_table'.

Returns
string

dispatchEvent() ¶ public

dispatchEvent(string $name, array $data = [], TSubject|null $subject = null): Cake\Event\EventInterface<TSubject>

Wrapper for creating and dispatching events.

Returns a dispatched event.

Parameters
string $name

Name of the event.

array $data optional

Any value you wish to be transported with this event to it can be read by listeners.

TSubject|null $subject optional

The object that this event applies to ($this by default).

Returns
Cake\Event\EventInterface<TSubject>

displayHelp() ¶ protected

displayHelp(Cake\Console\ConsoleOptionParser $parser, Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void

Output help content

Parameters
Cake\Console\ConsoleOptionParser $parser

The option parser.

Cake\Console\Arguments $args

The command arguments.

Cake\Console\ConsoleIo $io

The console io

Returns
void

execute() ¶ abstract public

execute(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int|null|void

Implement this method with your command's logic.

Parameters
Cake\Console\Arguments $args

The command arguments.

Cake\Console\ConsoleIo $io

The console io

Returns
int|null|void

executeCommand() ¶ public

executeCommand(Cake\Console\CommandInterface|string $command, array $args = [], Cake\Console\ConsoleIo|null $io = null): int|null

Execute another command with the provided set of arguments.

If you are using a string command name, that command's dependencies will not be resolved with the application container. Instead you will need to pass the command as an object with all of its dependencies.

Parameters
Cake\Console\CommandInterface|string $command

The command class name or command instance.

array $args optional

The arguments to invoke the command with.

Cake\Console\ConsoleIo|null $io optional

The ConsoleIo instance to use for the executed command.

Returns
int|null

getDescription() ¶ public static

getDescription(): string

Get the command description.

Returns
string

getEventManager() ¶ public

getEventManager(): Cake\Event\EventManagerInterface

Returns the Cake\Event\EventManager manager instance for this object.

You can use this instance to register any new listeners or callbacks to the object events, or create your own events and trigger them at will.

Returns
Cake\Event\EventManagerInterface

getName() ¶ public

getName(): string

Get the command name.

Returns
string

getOptionParser() ¶ public

getOptionParser(): Cake\Console\ConsoleOptionParser

Get the option parser.

You can override buildOptionParser() to define your options & arguments.

Returns
Cake\Console\ConsoleOptionParser
Throws
Cake\Core\Exception\CakeException
When the parser is invalid

getRootName() ¶ public

getRootName(): string

Get the root command name.

Returns
string

initialize() ¶ public

initialize(): void

Hook method invoked by CakePHP when a command is about to be executed.

Override this method and implement expensive/important setup steps that should not run on every command run. This method will be called before the options and arguments are validated and processed.

Returns
void

run() ¶ public

run(array $argv, Cake\Console\ConsoleIo $io): int|null

Run the command.

Parameters
array $argv
Cake\Console\ConsoleIo $io
Returns
int|null

setEventManager() ¶ public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

Returns the Cake\Event\EventManagerInterface instance for this object.

You can use this instance to register any new listeners or callbacks to the object events, or create your own events and trigger them at will.

Parameters
Cake\Event\EventManagerInterface $eventManager

the eventManager to set

Returns
$this

setName() ¶ public

setName(string $name): $this

Set the name this command uses in the collection.

Generally invoked by the CommandCollection when the command is added. Required to have at least one space in the name so that the root command can be calculated.

Parameters
string $name
Returns
$this

setOutputLevel() ¶ protected

setOutputLevel(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void

Set the output level based on the Arguments.

Parameters
Cake\Console\Arguments $args

The command arguments.

Cake\Console\ConsoleIo $io

The console io

Returns
void

Property Detail

$_eventClass ¶ protected

Default class name for new event objects.

Type
string

$_eventManager ¶ protected

Instance of the Cake\Event\EventManager this object is using to dispatch inner events.

Type
Cake\Event\EventManagerInterface|null

$factory ¶ protected

Type
?CommandFactoryInterface

$name ¶ protected

The name of this command.

Type
string
OpenHub
Pingping
Linode
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (Github)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • IRC
  • Slack
  • Paid Support

Generated using CakePHP API Docs