Skip to content

Latest commit

 

History

History
82 lines (46 loc) · 2.54 KB

README.md

File metadata and controls

82 lines (46 loc) · 2.54 KB

Session

GitHub release License Build Status Scrutinizer Total Downloads

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 Session implementation. This will use Laravel's Session goodness 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.


Analytics