berlioz/flash-bag

Berlioz FlashBag is a PHP library to manage flash messages to showed to the user.

v1.3.0 2021-09-03 12:51 UTC

This package is auto-updated.

Last update: 2024-04-07 02:07:32 UTC


README

Latest Version Software license Build Status Quality Grade Total Downloads

Berlioz FlashBag is a PHP library to manage flash messages to showed to the user.

Installation

Composer

You can install Berlioz FlashBag with Composer, it's the recommended installation.

$ composer require berlioz/flash-bag

Dependencies

  • PHP ^7.1 || ^8.0

Usage

All messages are stored in session of user. So you be able to get the messages after a reload of page or redirect. When you got the messages, they are deleted on the stack and no longer available.

Add message

It's very simple to add messages:

$flashBag = new FlashBag;
$flashBag
    ->add(FlashBag::TYPE_SUCCESS, 'Message success')
    ->add(FlashBag::TYPE_INFO, 'Second message')
    ->add(FlashBag::TYPE_INFO, 'Third message for %d %s', 3, 'persons');

Some default types are available in constants:

FlashBag::TYPE_INFO = 'info';
FlashBag::TYPE_SUCCESS = 'success';
FlashBag::TYPE_WARNING = 'warning';
FlashBag::TYPE_ERROR = 'error';

Get message

To get message, it's also simple then add:

$flashBag = new FlashBag;
$successMessages = $flashBag->get('success');

foreach ($successMessages as $msg) {
    print $msg;
}

Get all messages

You can also get all messages in one time:

$flashBag = new FlashBag;
$allMessages = $flashBag->all();

foreach ($allMessages as $type => $messages) {
    foreach ($messages as $msg) {
        print sprintf('%s: %s', $type, $msg);
    }
}