- About PHPFlasher
- Features
- Supported Versions
- Installation
- Quick Start
- Usage Examples
- Adapters Overview
- Official Documentation
- Contributors and Sponsors
- Contact
- License
PHPFlasher is an open-source tool that helps you add flash messages to your web applications. Flash messages are short notifications that provide feedback to users after they perform actions, such as submitting a form or encountering an error. These messages enhance the user experience by informing users about the outcomes of their actions.
PHPFlasher simplifies the process of integrating flash messages into Laravel and Symfony projects. It uses sessions to store messages, allowing you to set a message on one page and display it on another without complex setup.
- Multiple Adapters: Supports Laravel, Symfony, Toastr, Noty, SweetAlert, and more.
- Flexible Configuration: Customize the appearance and behavior of flash messages.
- Extensible: Easily integrate with various frontend libraries and frameworks.
- Intuitive API: Simple functions to create and manage flash messages.
PHPFlasher Version | PHP Version | Symfony Version | Laravel Version |
---|---|---|---|
v2.x | ≥ 8.2 | ≥ 7.2 | ≥ 11 |
v1.x | ≥ 5.3 | ≥ 2.0 | ≥ 4.0 |
Note: If your project uses PHP, Symfony, or Laravel versions below the requirements for PHPFlasher v2.x, please use PHPFlasher v1.x.
Install the core PHPFlasher package via Composer:
-
For Laravel:
composer require php-flasher/flasher-laravel
After installation, set up the necessary assets:
php artisan flasher:install
Note: PHPFlasher automatically injects the necessary JavaScript and CSS assets into your Blade templates. No additional steps are required for asset injection.
-
For Symfony:
composer require php-flasher/flasher-symfony
After installation, set up the necessary assets:
php bin/console flasher:install
Note: PHPFlasher automatically injects the necessary JavaScript and CSS assets into your Twig templates. No additional steps are required for asset injection.
PHPFlasher provides various adapters for different frameworks and notification libraries. Below is an overview of available adapters:
- flasher-toastr - Core Toastr Adapter
- flasher-toastr-laravel - Laravel Adapter
- flasher-toastr-symfony - Symfony Adapter
- flasher-noty - Core Noty Adapter
- flasher-noty-laravel - Laravel Adapter
- flasher-noty-symfony - Symfony Adapter
- flasher-notyf - Core Notyf Adapter
- flasher-notyf-laravel - Laravel Adapter
- flasher-notyf-symfony - Symfony Adapter
- flasher-sweetalert - Core SweetAlert Adapter
- flasher-sweetalert-laravel - Laravel Adapter
- flasher-sweetalert-symfony - Symfony Adapter
For detailed installation and usage instructions for each adapter, refer to their respective README.md.
To display a notification message, you can either use the flash()
helper function or obtain an instance of flasher
from the service container. Then, before returning a view or redirecting, call the desired method (success()
, error()
, etc.) and pass in the message to be displayed.
class BookController
{
public function saveBook()
{
// Your logic here
flash('Your changes have been saved!');
return redirect()->back();
}
}
use Flasher\Prime\FlasherInterface;
class AnotherController
{
/**
* If you prefer to use dependency injection
*/
public function register(FlasherInterface $flasher)
{
// Your logic here
$flasher->success('Your changes have been saved!');
// ... redirect or render the view
}
public function update()
{
// Your logic here
app('flasher')->error('An error occurred while updating.'); // ony for laravel
return redirect()->back();
}
}
flash()->success('Operation completed successfully!');
flash()->error('An error occurred.');
flash()->info('This is an informational message.');
flash()->warning('This is a warning message.');
flash()->success('Custom message with options.', ['timeout' => 3000, 'position' => 'bottom-left']);
PHPFlasher supports various adapters to integrate seamlessly with different frameworks and frontend libraries. Below is an overview of available adapters:
Adapter Repository | Description |
---|---|
flasher-laravel | Laravel framework adapter |
flasher-symfony | Symfony framework adapter |
flasher-toastr-laravel | Toastr adapter for Laravel |
flasher-toastr-symfony | Toastr adapter for Symfony |
flasher-noty-laravel | Noty adapter for Laravel |
flasher-noty-symfony | Noty adapter for Symfony |
flasher-notyf-laravel | Notyf adapter for Laravel |
flasher-notyf-symfony | Notyf adapter for Symfony |
flasher-sweetalert-laravel | SweetAlert adapter for Laravel |
flasher-sweetalert-symfony | SweetAlert adapter for Symfony |
Note: Each adapter has its own repository. For detailed installation and usage instructions, please refer to the Official Documentation.
Comprehensive documentation for PHPFlasher is available at https://php-flasher.io. Here you will find detailed guides, API references, and advanced usage examples to help you get the most out of PHPFlasher.
Join our team of contributors and make a lasting impact on our project!
We are always looking for passionate individuals who want to contribute their skills and ideas. Whether you're a developer, designer, or simply have a great idea, we welcome your participation and collaboration.
Shining stars of our community:
Younes ENNAJI 💻 📖 🚧 |
Salma Mourad 💵 |
Nashwan Abdullah 💵 |
Arvid de Jong 💵 |
Ash Allen 🎨 |
Tony Murray 💻 |
Stéphane P 📖 |
Lucas Maciel 🎨 |
Ahmed Gamal 💻 📖 |
Brooke. 📖 |
PHPFlasher is being actively developed by yoeunes. You can reach out with questions, bug reports, or feature requests on any of the following:
PHPFlasher is open-sourced software licensed under the MIT license.
Made with ❤️ by Younes ENNAJI