Class FlashComponent

The CakePHP FlashComponent provides a way for you to write a flash variable to the session from your controllers, to be rendered in a view with the FlashHelper.

Cake\Controller\Component implements Cake\Event\EventListenerInterface uses Cake\Core\InstanceConfigTrait , Cake\Log\LogTrait
Extended by Cake\Controller\Component\FlashComponent

Properties summary

Inherited Properties

Method Summary

  • __call() public
    Magic method for verbose flash methods based on element names.
  • __construct() public
    Constructor
  • set() public

    Used to set a session variable that can be used to output messages in the view. If you make consecutive calls to this method, the messages will stack (if they are set with the same flash key)

Method Detail

__call()source public

__call( string $name , array $args )

Magic method for verbose flash methods based on element names.

For example: $this->Flash->success('My message') would use the success.ctp element under src/Template/Element/Flash for rendering the flash message.

If you make consecutive calls to this method, the messages will stack (if they are set with the same flash key)

Note that the parameter element will be always overridden. In order to call a specific element from a plugin, you should set the plugin option in $args.

For example: $this->Flash->warning('My message', ['plugin' => 'PluginName']) would use the warning.ctp element under plugins/PluginName/src/Template/Element/Flash for rendering the flash message.

Parameters

string $name
Element name to use.
array $args
Parameters to pass when calling FlashComponent::set().

Throws

Cake\Network\Exception\InternalErrorException
If missing the flash message.

__construct()source public

__construct( Cake\Controller\ComponentRegistry $registry , array $config [] )

Constructor

Parameters

Cake\Controller\ComponentRegistry $registry
A ComponentRegistry for this component
array $config optional []
Array of config.

Overrides

Cake\Controller\Component::__construct()

set()source public

set( string|Exception $message , array $options [] )

Used to set a session variable that can be used to output messages in the view. If you make consecutive calls to this method, the messages will stack (if they are set with the same flash key)

In your controller: $this->Flash->set('This has been saved');

Options:

  • key The key to set under the session's Flash key
  • element The element used to render the flash message. Default to 'default'.
  • params An array of variables to make available when using an element
  • clear A bool stating if the current stack should be cleared to start a new one

Parameters

string|Exception $message

Message to be flashed. If an instance of \Exception the exception message will be used and code will be set in params.

array $options optional []
An array of options

Methods inherited from Cake\Controller\Component

__debugInfo()source public

__debugInfo( )

Returns an array that can be used to describe the internal state of this object.

Returns

array

__get()source public

__get( string $name )

Magic method for lazy loading $components.

Parameters

string $name
Name of component to get.

Returns

mixed
A Component object or null.

implementedEvents()source public

implementedEvents( )

Get the Controller callbacks this Component is interested in.

Uses Conventions to map controller events to standard component callback method names. By defining one of the callback methods a component is assumed to be interested in the related event.

Override this method if you need to add non-conventional event listeners. Or if you want components to listen to non-standard events.

Returns

array

Implementation of

Cake\Event\EventListenerInterface::implementedEvents()

initialize()source public

initialize( array $config )

Constructor hook method.

Implement this method to avoid having to overwrite the constructor and call parent.

Parameters

array $config
The configuration settings provided to this component.

Methods used from Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Delete a single config key

Parameters

string $key
Key to delete.

Throws

Cake\Core\Exception\Exception
if attempting to clobber existing config

_configRead()source protected

_configRead( string|null $key )

Read a config variable

Parameters

string|null $key
Key to read.

Returns

mixed

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge false )

Write a config variable

Parameters

string|array $key
Key to write to.
mixed $value
Value to write.
boolean|string $merge optional false

True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false.

Throws

Cake\Core\Exception\Exception
if attempting to clobber existing config

config()source public

config( string|array|null $key null , mixed|null $value null , boolean $merge true )

Usage

Reading the whole config:

$this->config();

Reading a specific value:

$this->config('key');

Reading a nested value:

$this->config('some.nested.key');

Setting a specific value:

$this->config('key', $value);

Setting a nested value:

$this->config('some.nested.key', $value);

Updating multiple config settings at the same time:

$this->config(['one' => 'value', 'another' => 'value']);

Parameters

string|array|null $key optional null
The key to get/set, or a complete array of configs.
mixed|null $value optional null
The value to set.
boolean $merge optional true
Whether to recursively merge or overwrite existing config, defaults to true.

Returns

mixed
Config value being read, or the object itself on write operations.

Throws

Cake\Core\Exception\Exception
When trying to set a key that is invalid.

configShallow()source public

configShallow( string|array $key , mixed|null $value null )

Merge provided config with existing config. Unlike config() which does a recursive merge for nested keys, this method does a simple merge.

Setting a specific value:

$this->config('key', $value);

Setting a nested value:

$this->config('some.nested.key', $value);

Updating multiple config settings at the same time:

$this->config(['one' => 'value', 'another' => 'value']);

Parameters

string|array $key
The key to set, or a complete array of configs.
mixed|null $value optional null
The value to set.

Returns


$this The object itself.

Methods used from Cake\Log\LogTrait

log()source public

log( mixed $msg , integer|string $level LogLevel::ERROR , string|array $context [] )

Convenience method to write a message to Log. See Log::write() for more information on writing to logs.

Parameters

mixed $msg
Log message.
integer|string $level optional LogLevel::ERROR
Error level.
string|array $context optional []
Additional log data relevant to this message.

Returns

boolean
Success of log write.

Magic methods summary

error()source public

error( string $message , array $options )

Set a message using "error" element

Parameters

string $message
array $options optional

success()source public

success( string $message , array $options )

Set a message using "success" element

Parameters

string $message
array $options optional

Properties detail

$_defaultConfigsource

protected array

Default configuration

[
    'key' => 'flash',
    'element' => 'default',
    'params' => [],
    'clear' => false
]

$_sessionsource

protected Cake\Network\Session

The Session object instance

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.Controller.Component.FlashComponent.html