codezero/session
Session
Manage session data.
This package includes an adapter for Laravel's Session Store, to enable the use of other implementations in non-Laravel projects.
Installation
Install this package through Composer:
composer require codezero/session
Vanilla PHP Implementation
Autoload the vendor classes:
require_once 'vendor/autoload.php'; // Path may vary
And then use the VanillaSession implementation:
$session = new \CodeZero\Session\VanillaSession();
Laravel 5 Implementation
Add a reference to LaravelSessionServiceProvider to the providers array in config/app.php:
'providers' => [
'CodeZero\Session\LaravelSessionServiceProvider'
]
Then you can "make" (or inject) a Cookie instance anywhere in your app:
$session = \App::make('CodeZero\Session\Session');
TIP: Laravel's IoC container will automatically provide the Laravel specific
Sessionimplementation. This will use Laravel'sSessiongoodness behind the scenes!
Usage
Store data in the session
$session->store('key', 'value');
$session->store('key', ['array' => 'value']);
Get session data
If a key doesn't exist, null will be returned.
$array = $session->get(); // An array of all data
$value = $session->get('key'); // Specific data
Delete session data
$session->flush(); // Clear all data
$session->delete('key'); // Clear specific data
Destroy the session
This will flush all data and regenerate the session ID.
$session->destroy();
Testing
$ vendor/bin/phpspec run
Security
If you discover any security related issues, please e-mail me instead of using the issue tracker.
License
The MIT License (MIT). Please see License File for more information.
Related Packages
PHP trait to manage the Laravel Entity on ElasticSearch via Elastiquent
Send and view multiple messages (success, error, info, warning) for user with La...