ConsoleOutput
extends StreamOutput
in package
implements
ConsoleOutputInterface
ConsoleOutput is the default class for all CLI output. It uses STDOUT and STDERR.
This class is a convenient wrapper around StreamOutput
for both STDOUT and STDERR.
$output = new ConsoleOutput();
This is equivalent to:
$output = new StreamOutput(fopen('php://stdout', 'w'));
$stdErr = new StreamOutput(fopen('php://stderr', 'w'));
Tags
Interfaces, Classes and Traits
- ConsoleOutputInterface
- ConsoleOutputInterface is the interface implemented by ConsoleOutput class.
Table of Contents
- $consoleSectionOutputs : mixed
- $formatter : mixed
- $stderr : mixed
- $stream : mixed
- $verbosity : mixed
- __construct() : mixed
- getErrorOutput() : OutputInterface
- Gets the OutputInterface for errors.
- getFormatter() : OutputFormatterInterface
- Returns current output formatter instance.
- getStream() : resource
- Gets the stream attached to this StreamOutput instance.
- getVerbosity() : int
- Gets the current verbosity of the output.
- isDebug() : bool
- Returns whether verbosity is debug (-vvv).
- isDecorated() : bool
- Gets the decorated flag.
- isQuiet() : bool
- Returns whether verbosity is quiet (-q).
- isVerbose() : bool
- Returns whether verbosity is verbose (-v).
- isVeryVerbose() : bool
- Returns whether verbosity is very verbose (-vv).
- section() : ConsoleSectionOutput
- Creates a new output section.
- setDecorated() : mixed
- {@inheritdoc}
- setErrorOutput() : mixed
- setFormatter() : mixed
- {@inheritdoc}
- setVerbosity() : mixed
- {@inheritdoc}
- write() : mixed
- Writes a message to the output.
- writeln() : mixed
- Writes a message to the output and adds a newline at the end.
- doWrite() : mixed
- Writes a message to the output.
- hasColorSupport() : bool
- Returns true if the stream supports colorization.
- hasStderrSupport() : bool
- Returns true if current environment supports writing console output to STDERR.
- hasStdoutSupport() : bool
- Returns true if current environment supports writing console output to STDOUT.
- isRunningOS400() : bool
- Checks if current executing environment is IBM iSeries (OS400), which doesn't properly convert character-encodings between ASCII to EBCDIC.
- openErrorStream() : resource
- openOutputStream() : resource
Properties
$consoleSectionOutputs
private
mixed
$consoleSectionOutputs
= []
$formatter
private
mixed
$formatter
$stderr
private
mixed
$stderr
$stream
private
mixed
$stream
$verbosity
private
mixed
$verbosity
Methods
__construct()
public
__construct([int $verbosity = self::VERBOSITY_NORMAL ][, bool|null $decorated = null ][, OutputFormatterInterface|null $formatter = null ]) : mixed
Parameters
- $verbosity : int = self::VERBOSITY_NORMAL
-
The verbosity level (one of the VERBOSITY constants in OutputInterface)
- $decorated : bool|null = null
-
Whether to decorate messages (null for auto-guessing)
- $formatter : OutputFormatterInterface|null = null
-
Output formatter instance (null to use default OutputFormatter)
Return values
mixed —getErrorOutput()
Gets the OutputInterface for errors.
public
getErrorOutput() : OutputInterface
Return values
OutputInterface —getFormatter()
Returns current output formatter instance.
public
getFormatter() : OutputFormatterInterface
Return values
OutputFormatterInterface —getStream()
Gets the stream attached to this StreamOutput instance.
public
getStream() : resource
Return values
resource —A stream resource
getVerbosity()
Gets the current verbosity of the output.
public
getVerbosity() : int
Return values
int —The current level of verbosity (one of the VERBOSITY constants)
isDebug()
Returns whether verbosity is debug (-vvv).
public
isDebug() : bool
Return values
bool —true if verbosity is set to VERBOSITY_DEBUG, false otherwise
isDecorated()
Gets the decorated flag.
public
isDecorated() : bool
Return values
bool —true if the output will decorate messages, false otherwise
isQuiet()
Returns whether verbosity is quiet (-q).
public
isQuiet() : bool
Return values
bool —true if verbosity is set to VERBOSITY_QUIET, false otherwise
isVerbose()
Returns whether verbosity is verbose (-v).
public
isVerbose() : bool
Return values
bool —true if verbosity is set to VERBOSITY_VERBOSE, false otherwise
isVeryVerbose()
Returns whether verbosity is very verbose (-vv).
public
isVeryVerbose() : bool
Return values
bool —true if verbosity is set to VERBOSITY_VERY_VERBOSE, false otherwise
section()
Creates a new output section.
public
section() : ConsoleSectionOutput
Return values
ConsoleSectionOutput —setDecorated()
{@inheritdoc}
public
setDecorated(bool $decorated) : mixed
Parameters
- $decorated : bool
Return values
mixed —setErrorOutput()
public
setErrorOutput(OutputInterface $error) : mixed
Parameters
- $error : OutputInterface
Return values
mixed —setFormatter()
{@inheritdoc}
public
setFormatter(OutputFormatterInterface $formatter) : mixed
Parameters
- $formatter : OutputFormatterInterface
Return values
mixed —setVerbosity()
{@inheritdoc}
public
setVerbosity(int $level) : mixed
Parameters
- $level : int
Return values
mixed —write()
Writes a message to the output.
public
write(mixed $messages[, bool $newline = false ][, int $options = self::OUTPUT_NORMAL ]) : mixed
Parameters
- $messages : mixed
-
The message as an iterable of strings or a single string
- $newline : bool = false
-
Whether to add a newline
- $options : int = self::OUTPUT_NORMAL
-
A bitmask of options (one of the OUTPUT or VERBOSITY constants), 0 is considered the same as self::OUTPUT_NORMAL | self::VERBOSITY_NORMAL
Return values
mixed —writeln()
Writes a message to the output and adds a newline at the end.
public
writeln(mixed $messages[, int $options = self::OUTPUT_NORMAL ]) : mixed
Parameters
- $messages : mixed
-
The message as an iterable of strings or a single string
- $options : int = self::OUTPUT_NORMAL
-
A bitmask of options (one of the OUTPUT or VERBOSITY constants), 0 is considered the same as self::OUTPUT_NORMAL | self::VERBOSITY_NORMAL
Return values
mixed —doWrite()
Writes a message to the output.
protected
abstract doWrite(string $message, bool $newline) : mixed
Parameters
- $message : string
- $newline : bool
Return values
mixed —hasColorSupport()
Returns true if the stream supports colorization.
protected
hasColorSupport() : bool
Colorization is disabled if not supported by the stream:
This is tricky on Windows, because Cygwin, Msys2 etc emulate pseudo terminals via named pipes, so we can only check the environment.
Reference: Composer\XdebugHandler\Process::supportsColor https://github.com/composer/xdebug-handler
Return values
bool —true if the stream supports colorization, false otherwise
hasStderrSupport()
Returns true if current environment supports writing console output to STDERR.
protected
hasStderrSupport() : bool
Return values
bool —hasStdoutSupport()
Returns true if current environment supports writing console output to STDOUT.
protected
hasStdoutSupport() : bool
Return values
bool —isRunningOS400()
Checks if current executing environment is IBM iSeries (OS400), which doesn't properly convert character-encodings between ASCII to EBCDIC.
private
isRunningOS400() : bool
Return values
bool —openErrorStream()
private
openErrorStream() : resource
Return values
resource —openOutputStream()
private
openOutputStream() : resource