Documentation

DumpCommand extends ReflectingCommand
in package
implements PresenterAware

Dump an object or primitive.

This is like var_dump but way awesomer.

Interfaces, Classes and Traits

PresenterAware
Presenter injects itself as a dependency to all objects which implement PresenterAware.

Table of Contents

CLASS_MEMBER  = '/^([\\\w]+)::(\w+)$/'
CLASS_OR_FUNC  = '/^[\\\w]+$/'
CLASS_STATIC  = '/^([\\\w]+)::\$(\w+)$/'
INSTANCE_MEMBER  = '/^(\$\w+)(::|->)(\w+)$/'
$context  : Context
Context instance (for ContextAware interface).
$defaultName  : string|null
$aliases  : mixed
$application  : mixed
$applicationDefinitionMerged  : mixed
$applicationDefinitionMergedWithArgs  : mixed
$code  : mixed
$definition  : mixed
$description  : mixed
$help  : mixed
$helperSet  : mixed
$hidden  : mixed
$ignoreValidationErrors  : mixed
$name  : mixed
$presenter  : mixed
$processTitle  : mixed
$synopsis  : mixed
$usages  : mixed
__construct()  : mixed
addArgument()  : $this
Adds an argument.
addOption()  : $this
Adds an option.
addUsage()  : $this
Add a command usage example.
asText()  : mixed
{@inheritdoc}
getAliases()  : array<string|int, mixed>
Returns the aliases for the command.
getApplication()  : Application|null
Gets the application instance for this command.
getDefaultName()  : string|null
getDefinition()  : InputDefinition
Gets the InputDefinition attached to this Command.
getDescription()  : string
Returns the description for the command.
getHelp()  : string
Returns the help for the command.
getHelper()  : mixed
Gets a helper instance by name.
getHelperSet()  : HelperSet|null
Gets the helper set.
getName()  : string|null
Returns the command name.
getNativeDefinition()  : InputDefinition
Gets the InputDefinition to be used to create representations of this Command.
getProcessedHelp()  : string
Returns the processed help for the command replacing the %command.name% and %command.full_name% patterns with the real values dynamically.
getSynopsis()  : string
Returns the synopsis for the command.
getUsages()  : array<string|int, mixed>
Returns alternative usages of the command.
ignoreValidationErrors()  : mixed
Ignores validation errors.
isEnabled()  : bool
Checks whether the command is enabled or not in the current environment.
isHidden()  : bool
mergeApplicationDefinition()  : mixed
Merges the application definition with the command definition.
run()  : int
Runs the command.
setAliases()  : $this
Sets the aliases for the command.
setApplication()  : mixed
setCode()  : $this
Sets the code to execute when running this command.
setContext()  : mixed
ContextAware interface.
setDefinition()  : $this
Sets an array of argument and option instances.
setDescription()  : $this
Sets the description for the command.
setHelp()  : $this
Sets the help for the command.
setHelperSet()  : mixed
setHidden()  : Command
setName()  : $this
Sets the name of the command.
setPresenter()  : mixed
PresenterAware interface.
setProcessTitle()  : $this
Sets the process title of the command.
configure()  : mixed
{@inheritdoc}
execute()  : mixed
{@inheritdoc}
getHiddenArguments()  : array<string|int, mixed>
These arguments will be excluded from help output.
getHiddenOptions()  : array<string|int, mixed>
These options will be excluded from help output.
getScopeVariable()  : mixed
Get a variable from the current shell scope.
getScopeVariables()  : array<string|int, mixed>
Get all scope variables from the current shell scope.
getTable()  : Table|TableHelper
Get a Table instance.
getTableHelper()  : TableHelper
Legacy fallback for getTable.
getTarget()  : array<string|int, mixed>
Get the target for a value.
getTargetAndReflector()  : array<string|int, mixed>
Get a Reflector and documentation for a function, class or instance, constant, method or property.
initialize()  : mixed
Initializes the command after the input has been bound and before the input is validated.
interact()  : mixed
Interacts with the user.
resolveCode()  : mixed
Resolve code to a value in the current scope.
resolveInstance()  : mixed
resolveName()  : string
Resolve a class or function name (with the current shell namespace).
resolveTarget()  : mixed
setCommandScopeVariables()  : mixed
Given a Reflector instance, set command-scope variables in the shell execution context. This is used to inject magic $__class, $__method and $__file variables (as well as a handful of others).
aliasesAsText()  : string
Format command aliases as text.
argumentsAsText()  : string
Format command arguments as text.
formatDefaultValue()  : string
Format an option default as text.
getArguments()  : mixed
{@inheritdoc}
getMaxWidth()  : int
Calculate the maximum padding width for a set of lines.
getOptions()  : mixed
{@inheritdoc}
optionsAsText()  : string
Format options as text.
resolveObject()  : object
Resolve code to an object in the current scope.
validateName()  : mixed
Validates a command name.

Constants

Properties

$defaultName

protected static string|null $defaultName

The default command name

$aliases

private mixed $aliases = []

$application

private mixed $application

$applicationDefinitionMerged

private mixed $applicationDefinitionMerged = false

$applicationDefinitionMergedWithArgs

private mixed $applicationDefinitionMergedWithArgs = false

$definition

private mixed $definition

$description

private mixed $description = ''

$hidden

private mixed $hidden = false

$ignoreValidationErrors

private mixed $ignoreValidationErrors = false

$processTitle

private mixed $processTitle

$synopsis

private mixed $synopsis = []

Methods

__construct()

public __construct([string|null $name = null ]) : mixed
Parameters
$name : string|null = null

The name of the command; passing null means it must be set in configure()

Tags
throws
LogicException

When the command name is empty

Return values
mixed

addArgument()

Adds an argument.

public addArgument(string $name[, int|null $mode = null ][, string $description = '' ][, string|array<string|int, string>|null $default = null ]) : $this
Parameters
$name : string

The argument name

$mode : int|null = null

The argument mode: InputArgument::REQUIRED or InputArgument::OPTIONAL

$description : string = ''

A description text

$default : string|array<string|int, string>|null = null

The default value (for InputArgument::OPTIONAL mode only)

Tags
throws
InvalidArgumentException

When argument mode is not valid

Return values
$this

addOption()

Adds an option.

public addOption(string $name[, string|array<string|int, mixed>|null $shortcut = null ][, int|null $mode = null ][, string $description = '' ][, string|array<string|int, string>|int|bool|null $default = null ]) : $this
Parameters
$name : string

The option name

$shortcut : string|array<string|int, mixed>|null = null

The shortcuts, can be null, a string of shortcuts delimited by | or an array of shortcuts

$mode : int|null = null

The option mode: One of the InputOption::VALUE_* constants

$description : string = ''

A description text

$default : string|array<string|int, string>|int|bool|null = null

The default value (must be null for InputOption::VALUE_NONE)

Tags
throws
InvalidArgumentException

If option mode is invalid or incompatible

Return values
$this

addUsage()

Add a command usage example.

public addUsage(string $usage) : $this
Parameters
$usage : string

The usage, it'll be prefixed with the command name

Return values
$this

asText()

{@inheritdoc}

public asText() : mixed
Return values
mixed

getAliases()

Returns the aliases for the command.

public getAliases() : array<string|int, mixed>
Return values
array<string|int, mixed>

An array of aliases for the command

getApplication()

Gets the application instance for this command.

public getApplication() : Application|null
Return values
Application|null

An Application instance

getDefaultName()

public static getDefaultName() : string|null
Return values
string|null

The default command name or null when no default name is set

getDescription()

Returns the description for the command.

public getDescription() : string
Return values
string

The description for the command

getHelp()

Returns the help for the command.

public getHelp() : string
Return values
string

The help for the command

getHelper()

Gets a helper instance by name.

public getHelper(string $name) : mixed
Parameters
$name : string

The helper name

Tags
throws
LogicException

if no HelperSet is defined

throws
InvalidArgumentException

if the helper is not defined

Return values
mixed

The helper value

getHelperSet()

Gets the helper set.

public getHelperSet() : HelperSet|null
Return values
HelperSet|null

A HelperSet instance

getName()

Returns the command name.

public getName() : string|null
Return values
string|null

getNativeDefinition()

Gets the InputDefinition to be used to create representations of this Command.

public getNativeDefinition() : InputDefinition

Can be overridden to provide the original command representation when it would otherwise be changed by merging with the application InputDefinition.

This method is not part of public API and should not be used directly.

Return values
InputDefinition

An InputDefinition instance

getProcessedHelp()

Returns the processed help for the command replacing the %command.name% and %command.full_name% patterns with the real values dynamically.

public getProcessedHelp() : string
Return values
string

The processed help for the command

getSynopsis()

Returns the synopsis for the command.

public getSynopsis([bool $short = false ]) : string
Parameters
$short : bool = false

Whether to show the short version of the synopsis (with options folded) or not

Return values
string

The synopsis

getUsages()

Returns alternative usages of the command.

public getUsages() : array<string|int, mixed>
Return values
array<string|int, mixed>

ignoreValidationErrors()

Ignores validation errors.

public ignoreValidationErrors() : mixed

This is mainly useful for the help command.

Return values
mixed

isEnabled()

Checks whether the command is enabled or not in the current environment.

public isEnabled() : bool

Override this to check for x or y and return false if the command can not run properly under the current conditions.

Return values
bool

isHidden()

public isHidden() : bool
Return values
bool

whether the command should be publicly shown or not

mergeApplicationDefinition()

Merges the application definition with the command definition.

public mergeApplicationDefinition([bool $mergeArgs = true ]) : mixed

This method is not part of public API and should not be used directly.

Parameters
$mergeArgs : bool = true

Whether to merge or not the Application definition arguments to Command definition arguments

Return values
mixed

run()

Runs the command.

public run(InputInterface $input, OutputInterface $output) : int

The code to execute is either defined directly with the setCode() method or by overriding the execute() method in a sub-class.

Parameters
$input : InputInterface
$output : OutputInterface
Tags
throws
Exception

When binding input fails. Bypass this by calling .

see
setCode()
see
execute()
Return values
int

The command exit code

setAliases()

Sets the aliases for the command.

public setAliases(array<string|int, string> $aliases) : $this
Parameters
$aliases : array<string|int, string>

An array of aliases for the command

Tags
throws
InvalidArgumentException

When an alias is invalid

Return values
$this

setApplication()

public setApplication([Application $application = null ]) : mixed
Parameters
$application : Application = null
Return values
mixed

setCode()

Sets the code to execute when running this command.

public setCode(callable $code) : $this

If this method is used, it overrides the code defined in the execute() method.

Parameters
$code : callable

A callable(InputInterface $input, OutputInterface $output)

Tags
throws
InvalidArgumentException
see
execute()
Return values
$this

setDefinition()

Sets an array of argument and option instances.

public setDefinition(array<string|int, mixed>|InputDefinition $definition) : $this
Parameters
$definition : array<string|int, mixed>|InputDefinition

An array of argument and option instances or a definition instance

Return values
$this

setDescription()

Sets the description for the command.

public setDescription(string $description) : $this
Parameters
$description : string

The description for the command

Return values
$this

setHelp()

Sets the help for the command.

public setHelp(string $help) : $this
Parameters
$help : string

The help for the command

Return values
$this

setHidden()

public setHidden(bool $hidden) : Command
Parameters
$hidden : bool

Whether or not the command should be hidden from the list of commands

Return values
Command

The current instance

setName()

Sets the name of the command.

public setName(string $name) : $this

This method can set both the namespace and the name if you separate them by a colon (:)

$command->setName('foo:bar');
Parameters
$name : string

The command name

Tags
throws
InvalidArgumentException

When the name is invalid

Return values
$this

setPresenter()

PresenterAware interface.

public setPresenter(Presenter $presenter) : mixed
Parameters
$presenter : Presenter
Return values
mixed

setProcessTitle()

Sets the process title of the command.

public setProcessTitle(string $title) : $this

This feature should be used only when creating a long process command, like a daemon.

Parameters
$title : string

The process title

Return values
$this

configure()

{@inheritdoc}

protected configure() : mixed
Return values
mixed

getHiddenArguments()

These arguments will be excluded from help output.

protected getHiddenArguments() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHiddenOptions()

These options will be excluded from help output.

protected getHiddenOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getScopeVariable()

Get a variable from the current shell scope.

protected getScopeVariable(string $name) : mixed
Parameters
$name : string
Return values
mixed

getScopeVariables()

Get all scope variables from the current shell scope.

protected getScopeVariables() : array<string|int, mixed>
Return values
array<string|int, mixed>

getTableHelper()

Legacy fallback for getTable.

protected getTableHelper() : TableHelper
Return values
TableHelper

getTarget()

Get the target for a value.

protected getTarget(string $valueName) : array<string|int, mixed>
Parameters
$valueName : string

Function, class, variable, constant, method or property name

Tags
throws
InvalidArgumentException

when the value specified can't be resolved

Return values
array<string|int, mixed>

(class or instance name, member name, kind)

getTargetAndReflector()

Get a Reflector and documentation for a function, class or instance, constant, method or property.

protected getTargetAndReflector(string $valueName) : array<string|int, mixed>
Parameters
$valueName : string

Function, class, variable, constant, method or property name

Return values
array<string|int, mixed>

(value, Reflector)

initialize()

Initializes the command after the input has been bound and before the input is validated.

protected initialize(InputInterface $input, OutputInterface $output) : mixed

This is mainly useful when a lot of commands extends one main command where some things need to be initialized based on the input arguments and options.

Parameters
$input : InputInterface
$output : OutputInterface
Tags
see
InputInterface::bind()
see
InputInterface::validate()
Return values
mixed

interact()

Interacts with the user.

protected interact(InputInterface $input, OutputInterface $output) : mixed

This method is executed before the InputDefinition is validated. This means that this is the only place where the command can interactively ask for values of missing required arguments.

Parameters
$input : InputInterface
$output : OutputInterface
Return values
mixed

resolveCode()

Resolve code to a value in the current scope.

protected resolveCode(string $code) : mixed
Parameters
$code : string
Tags
throws
RuntimeException

when the code does not return a value in the current scope

Return values
mixed

Variable value

resolveInstance()

protected resolveInstance(string $name) : mixed
Parameters
$name : string
Tags
deprecated

Use resolveCode instead

Return values
mixed

Variable instance

resolveName()

Resolve a class or function name (with the current shell namespace).

protected resolveName(string $name[, bool $includeFunctions = false ]) : string
Parameters
$name : string
$includeFunctions : bool = false

(default: false)

Tags
throws
ErrorException

when self or static is used in a non-class scope

Return values
string

resolveTarget()

protected resolveTarget(string $name) : mixed
Parameters
$name : string
Tags
deprecated

Use resolveCode instead

Return values
mixed

setCommandScopeVariables()

Given a Reflector instance, set command-scope variables in the shell execution context. This is used to inject magic $__class, $__method and $__file variables (as well as a handful of others).

protected setCommandScopeVariables(Reflector $reflector) : mixed
Parameters
$reflector : Reflector
Return values
mixed

aliasesAsText()

Format command aliases as text.

private aliasesAsText() : string

.

Return values
string

argumentsAsText()

Format command arguments as text.

private argumentsAsText() : string
Return values
string

formatDefaultValue()

Format an option default as text.

private formatDefaultValue(mixed $default) : string
Parameters
$default : mixed
Return values
string

getArguments()

{@inheritdoc}

private getArguments() : mixed
Return values
mixed

getMaxWidth()

Calculate the maximum padding width for a set of lines.

private getMaxWidth() : int
Return values
int

getOptions()

{@inheritdoc}

private getOptions() : mixed
Return values
mixed

optionsAsText()

Format options as text.

private optionsAsText() : string
Return values
string

resolveObject()

Resolve code to an object in the current scope.

private resolveObject(string $code) : object
Parameters
$code : string
Tags
throws
RuntimeException

when the code resolves to a non-object value

Return values
object

Variable instance

validateName()

Validates a command name.

private validateName(string $name) : mixed

It must be non-empty and parts can optionally be separated by ":".

Parameters
$name : string
Tags
throws
InvalidArgumentException

When the name is invalid

Return values
mixed

Search results