1. Go to this page and download the library: Download kattsoftware/firesessions library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
// 192.168.0.1:11211 has a higher priority (5), while 192.168.1.1:11211 has the weight 1.
$config['save_path'] = '192.168.0.1:11211:5,192.168.1.1:11211:1';
$config['fetch_pool_servers'] = false;
$config['save_path'] = 'host=localhost,port=6379,password=myPassword,database=2,timeout=30,prefix=sessions:';
// host - () which Redis database to use
// timeout - (optional) Redis connection timeout, in seconds
// prefix - (optional) Prefix of the entries names (if not set, the "cookie_name" setting will be used)
$session->setUserdata('logged_userid', 1234);
$session->setUserdata('logged_username', 'myUsername');
// or
$session->logged_userid = 1234;
$session->logged_username = 'myUsername';
// you may also set the variable by assigning $_SESSION variable:
$_SESSION['logged_userid'] = 1234;
$_SESSION['logged_username'] = 'myUsername';
// you can also set multiple user data at once:
$session->setUserdata(array(
'logged_userid' => 1234,
'logged_username' => 'myUsername'
));
echo $session->userdata('logged_userid'); // outputs 1234
echo $session->userdata('logged_username'); // outputs myUsername
// or
echo $session->logged_userid; // outputs 1234
echo $session->logged_username; // outputs myUsername
// or you can use the $_SESSION variable:
echo $_SESSION['logged_userid']; // outputs 1234
echo $_SESSION['logged_username']; // outputs myUsername
var_dump($session->userdata()); // Outputs all user data
// removes the "logged_userid" variable
$session->unsetUserdata('logged_userid');
// removes multiple user data
$session->unsetUserdata(array('logged_userid', 'logger_username'));
$session->setFlashdata('success_message', 'Your profile has been saved!');
// setting multiple flash data at once:
$session->setFlashdata(array(
'firstname_validation' => 'Invalid first name!',
'email_validation' => 'Invalid e-mail address!'
));
echo $session->flashdata('email_validation');
// outputs The typed e-mail address is invalid!
// you can also fetch the entire flash data as an associative array:
var_dump($session->flashdata());
$session->keepFlashdata('email_validation');
// Preserves the "email_validation" flash for another request as well
// Preserve more than one flash data for another request
$session->keepFlashdata(array('email_validation', 'firstname_validation'));
// removes the "email_validation" flash data
$session->unsetFlashdata('email_validation');
// removes multiple flash data
$session->unsetUserdata(array('email_validation', 'firstname_validation'));
// this will create a temp data 'quiz_score', having the value of 72
// and expiring after 300 seconds
$session->setTempdata('quiz_score', 73, 300);
// setting multiple temp data at once
$session->setTempdata(array(
'quiz_question1' => 10,
'quiz_question2' => 0
), array(
'quiz_question1' => 300, // quiz_question1 will expire after 300 seconds
'quiz_question2' => 350 // quiz_question2 will expire after 350 seconds
));
// or you can use the same expiration time for all items:
$session->setTempdata(array(
'quiz_question1' => 10,
'quiz_question2' => 0
), 300);
echo $session->tempdata('quiz_question1');
// outputs 10
// you can also fetch the entire temp data as an associative array:
var_dump($session->tempdata());
// removes the 'quiz_question1' temp data
$session->unsetTempdata('quiz_question1');
// or you may set multiple temp data at once:
$session->unsetTempdata('quiz_question1', 'quiz_question2');
// all of the below calls return a boolean value
$session->hasUserdata('logged_userid');
$session->hasFlashdata('email_validation');
$session->hasTempdata('quizz_answers');
// Deletes the user, flash and temp data + the session cookie
$session->destroy();
use FireSessions\SessionFactory;
// here goes your config
// $config = array(...);
// A global instance is created
$session = SessionFactory::getInstance($config);
// ... in another place/file, you may get the already created instance again:
$session = SessionFactory::getInstance();
parent::__construct($config);
DriversFactory::registerDriver('myDriver', MyDriver::class);
// or you can send the already created custom driver instance:
// $myDriver = new MyDriver(...);
DriversFactory::registerDriver('myDriver', $myDriver);