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 ConsoleOutput

Object wrapper for outputting information from a shell application. Can be connected to any stream resource that can be used with fopen()

Can generate colorized output on consoles that support it. There are a few built in styles

  • error Error messages.
  • warning Warning messages.
  • info Informational messages.
  • comment Additional text.
  • question Magenta text used for user prompts
  • success Green foreground text
  • info.bg Cyan background with black text
  • warning.bg Yellow background with black text
  • error.bg Red background with black text
  • success.bg Green background with black text

By defining styles with addStyle() you can create custom console styles.

Using styles in output

You can format console output using tags with the name of the style to apply. From inside a shell object

$this->out('<warning>Overwrite:</warning> foo.php was overwritten.');

This would create orange 'Overwrite:' text, while the rest of the text would remain the normal color. See ConsoleOutput::styles() to learn more about defining your own styles. Nested styles are not supported at this time.

Namespace: Cake\Console

Constants

  • int
    COLOR ¶
    2

    Color output - Convert known tags in to ANSI color escape codes.

  • string
    LF ¶
    PHP_EOL

    Constant for a newline.

  • int
    PLAIN ¶
    1

    Plain output - tags will be stripped.

  • int
    RAW ¶
    0

    Raw output constant - no modification of output text.

Property Summary

  • $_backgroundColors protected static
    array<string, int>

    background colors used in colored output.

  • $_foregroundColors protected static
    array<string, int>

    text colors used in colored output.

  • $_options protected static
    array<string, int>

    Formatting options for colored output.

  • $_output protected
    resource

    File handle for output.

  • $_outputAs protected
    int

    The current output type.

  • $_styles protected static
    array<string, array>

    Styles that are available as tags in console output. You can modify these styles with ConsoleOutput::styles()

Method Summary

  • __construct() public

    Construct the output object.

  • __destruct() public

    Clean up and close handles

  • _replaceTags() protected

    Replace tags with color codes.

  • _write() protected

    Writes a message to the output stream.

  • getOutputAs() public

    Get the output type on how formatting tags are treated.

  • getStyle() public

    Gets the current styles offered

  • setOutputAs() public

    Set the output type on how formatting tags are treated.

  • setStyle() public

    Sets style.

  • styleText() public

    Apply styling to text.

  • styles() public

    Gets all the style definitions.

  • write() public

    Outputs a single or multiple messages to stdout or stderr. If no parameters are passed, outputs just a newline.

Method Detail

__construct() ¶ public

__construct(resource|string $stream = 'php://stdout')

Construct the output object.

Checks for a pretty console environment. Ansicon and ConEmu allows pretty consoles on Windows, and is supported.

Parameters
resource|string $stream optional

The identifier of the stream to write output to.

Throws
Cake\Console\Exception\ConsoleException
If the given stream is not a valid resource.

__destruct() ¶ public

__destruct()

Clean up and close handles

_replaceTags() ¶ protected

_replaceTags(array<string, string> $matches): string

Replace tags with color codes.

Parameters
array<string, string> $matches

An array of matches to replace.

Returns
string

_write() ¶ protected

_write(string $message): int

Writes a message to the output stream.

Parameters
string $message

Message to write.

Returns
int

getOutputAs() ¶ public

getOutputAs(): int

Get the output type on how formatting tags are treated.

Returns
int

getStyle() ¶ public

getStyle(string $style): array

Gets the current styles offered

Parameters
string $style

The style to get.

Returns
array

setOutputAs() ¶ public

setOutputAs(int $type): void

Set the output type on how formatting tags are treated.

Parameters
int $type

The output type to use. Should be one of the class constants.

Returns
void
Throws
InvalidArgumentException
in case of a not supported output type.

setStyle() ¶ public

setStyle(string $style, array $definition): void

Sets style.

Creates or modifies an existing style.

$output->setStyle('annoy', ['text' => 'purple', 'background' => 'yellow', 'blink' => true]);

Remove a style

$this->output->setStyle('annoy', []);
Parameters
string $style

The style to set.

array $definition

The array definition of the style to change or create..

Returns
void

styleText() ¶ public

styleText(string $text): string

Apply styling to text.

Parameters
string $text

Text with styling tags.

Returns
string

styles() ¶ public

styles(): array<string, mixed>

Gets all the style definitions.

Returns
array<string, mixed>

write() ¶ public

write(array<string>|string $message, int $newlines = 1): int

Outputs a single or multiple messages to stdout or stderr. If no parameters are passed, outputs just a newline.

Parameters
array<string>|string $message

A string or an array of strings to output

int $newlines optional

Number of newlines to append

Returns
int

Property Detail

$_backgroundColors ¶ protected static

background colors used in colored output.

Type
array<string, int>

$_foregroundColors ¶ protected static

text colors used in colored output.

Type
array<string, int>

$_options ¶ protected static

Formatting options for colored output.

Type
array<string, int>

$_output ¶ protected

File handle for output.

Type
resource

$_outputAs ¶ protected

The current output type.

Type
int

$_styles ¶ protected static

Styles that are available as tags in console output. You can modify these styles with ConsoleOutput::styles()

Type
array<string, array>
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