FlashBag

class FlashBag implements FlashBagInterface

FlashBag flash message container.

Methods

public __construct(string $storageKey = '_symfony_flashes') No description
public string getName() Gets this bag's name.
public setName($name) No description
public initialize(array $flashes) Initializes the Bag.
public add(string $type, string $message) Adds a flash message for type.
public array peek(string $type, array $default = array()) Gets flash messages for a given type.
public array peekAll() Gets all flash messages.
public array get(string $type, array $default = array()) Gets and clears flash from the stack.
public array all() Gets and clears flashes from the stack.
public set(string $type, $messages) Registers a message for a given type.
public setAll(array $messages) Sets all flash messages.
public bool has(string $type) Has flash messages for a given type?
public array keys() Returns a list of all defined types.
public string getStorageKey() Gets the storage key for this bag.
public mixed clear() Clears out data from bag.

Details

at line 28

__construct()

public __construct(string $storageKey = '_symfony_flashes')

Parameters

string $storageKey The key used to store flashes in the session
at line 36

getName()

public string getName()

Gets this bag's name.

Return Value

string
at line 41

setName()

public setName($name)

Parameters

$name
at line 49

initialize()

public initialize(array $flashes)

Initializes the Bag.

Parameters

array $flashes
at line 57

add()

public add(string $type, string $message)

Adds a flash message for type.

Parameters

string $type
string $message
at line 65

peek()

public array peek(string $type, array $default = array())

Gets flash messages for a given type.

Parameters

string $type Message category type
array $default Default value if $type does not exist

Return Value

array
at line 73

peekAll()

public array peekAll()

Gets all flash messages.

Return Value

array
at line 81

get()

public array get(string $type, array $default = array())

Gets and clears flash from the stack.

Parameters

string $type
array $default Default value if $type does not exist

Return Value

array
at line 97

all()

public array all()

Gets and clears flashes from the stack.

Return Value

array
at line 108

set()

public set(string $type, $messages)

Registers a message for a given type.

Parameters

string $type
$messages
at line 116

setAll()

public setAll(array $messages)

Sets all flash messages.

Parameters

array $messages
at line 124

has()

public bool has(string $type)

Has flash messages for a given type?

Parameters

string $type

Return Value

bool
at line 132

keys()

public array keys()

Returns a list of all defined types.

Return Value

array
at line 140

getStorageKey()

public string getStorageKey()

Gets the storage key for this bag.

Return Value

string
at line 148

clear()

public mixed clear()

Clears out data from bag.

Return Value

mixed Whatever data was contained

Source code

<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Symfony\Component\HttpFoundation\Session\Flash;

/**
 * FlashBag flash message container.
 *
 * @author Drak <drak@zikula.org>
 */
class FlashBag implements FlashBagInterface
{
    private $name = 'flashes';
    private $flashes = array();
    private $storageKey;

    /**
     * @param string $storageKey The key used to store flashes in the session
     */
    public function __construct(string $storageKey = '_symfony_flashes')
    {
        $this->storageKey = $storageKey;
    }

    /**
     * {@inheritdoc}
     */
    public function getName()
    {
        return $this->name;
    }

    public function setName($name)
    {
        $this->name = $name;
    }

    /**
     * {@inheritdoc}
     */
    public function initialize(array &$flashes)
    {
        $this->flashes = &$flashes;
    }

    /**
     * {@inheritdoc}
     */
    public function add($type, $message)
    {
        $this->flashes[$type][] = $message;
    }

    /**
     * {@inheritdoc}
     */
    public function peek($type, array $default = array())
    {
        return $this->has($type) ? $this->flashes[$type] : $default;
    }

    /**
     * {@inheritdoc}
     */
    public function peekAll()
    {
        return $this->flashes;
    }

    /**
     * {@inheritdoc}
     */
    public function get($type, array $default = array())
    {
        if (!$this->has($type)) {
            return $default;
        }

        $return = $this->flashes[$type];

        unset($this->flashes[$type]);

        return $return;
    }

    /**
     * {@inheritdoc}
     */
    public function all()
    {
        $return = $this->peekAll();
        $this->flashes = array();

        return $return;
    }

    /**
     * {@inheritdoc}
     */
    public function set($type, $messages)
    {
        $this->flashes[$type] = (array) $messages;
    }

    /**
     * {@inheritdoc}
     */
    public function setAll(array $messages)
    {
        $this->flashes = $messages;
    }

    /**
     * {@inheritdoc}
     */
    public function has($type)
    {
        return array_key_exists($type, $this->flashes) && $this->flashes[$type];
    }

    /**
     * {@inheritdoc}
     */
    public function keys()
    {
        return array_keys($this->flashes);
    }

    /**
     * {@inheritdoc}
     */
    public function getStorageKey()
    {
        return $this->storageKey;
    }

    /**
     * {@inheritdoc}
     */
    public function clear()
    {
        return $this->all();
    }
}