Skip to main content
Version: 3.x

Flash Messages

Install

Via Composer

$ composer require slim/flash

Requires Slim 3.0.0 or newer.

Usage

// Start PHP session
session_start(); //by default requires session storage

$app = new \Slim\App();

// Fetch DI Container
$container = $app->getContainer();

// Register provider
$container['flash'] = function () {
return new \Slim\Flash\Messages();
};

$app->get('/foo', function ($req, $res, $args) {
// Set flash message for next request
$this->flash->addMessage('Test', 'This is a message');

// Redirect
return $res->withStatus(302)->withHeader('Location', '/bar');
});

$app->get('/bar', function ($req, $res, $args) {
// Add message to be used in current request
$this->flash->addMessageNow('Test', 'This is another message');

// Get flash messages from previous request
$messages = $this->flash->getMessages();

// Returns both flash messages
print_r($messages);
});

$app->run();

Please note that a message could be a string, object or array. Please check what your storage can handle.