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

Method Detail

__callsource 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.

__constructsource 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()

setsource 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

__debugInfosource public

__debugInfo( )

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

Returns

array
array

__getsource 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.

implementedEventssource 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
array

Implementation of

Cake\Event\EventListenerInterface::implementedEvents()

initializesource 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

_configDeletesource 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

_configReadsource protected

_configRead( string|null $key )

Read a config variable

Parameters

string|null $key
Key to read.

Returns

mixed
mixed

_configWritesource 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

configsource 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.

configShallowsource 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

mixed
$this The object itself.

Methods used from Cake\Log\LogTrait

logsource 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

errorsource public

error( string $message , array $options [] )

Set a message using "error" element

Parameters

string $message optional
array $options optional []

successsource public

success( string $message , array $options [] )

Set a message using "success" element

Parameters

string $message optional
array $options optional []

Properties summary

$_defaultConfigsource

protected array

Default configuration

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

$_sessionsource

protected Cake\Network\Session

The Session object instance

Properties inherited from Cake\Controller\Component

$_componentMapsource

protected array

A component lookup table used to lazy load component objects.

[]

$_registrysource

protected Cake\Controller\ComponentRegistry

Component registry class used to lazy load components.

$componentssource

public array

Other Components this component uses.

[]

$requestsource

public Cake\Network\Request

Request object

$responsesource

public Cake\Network\Response

Response object

Properties used from Cake\Core\InstanceConfigTrait

$_configsource

protected array

Runtime config

[]

$_configInitializedsource

protected boolean

Whether the config property has already been configured with defaults

false

© 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.1/class-Cake.Controller.Component.FlashComponent.html