mouf / utils.session.session-manager
This package is used to manage sessions. It provides a DefaultSessionManager class that you can use to configure your PHP sessions, and a SessionManagerInterface that you can implement if you want to provide your own session management.
Installs: 251 011
Dependents: 7
Suggesters: 0
Security: 0
Stars: 1
Watchers: 8
Forks: 2
Open Issues: 1
Type:mouf-library
Requires
Requires (Dev)
- phpstan/phpstan: ^1.9
- squizlabs/php_codesniffer: ^3.3.1
- thecodingmachine/phpstan-strict-rules: ^1.0
Suggests
- mouf/utils.session.optimistic-session-handler: Session handler that releases session lock quickly. Usefull for multiple ajax calls on the same page.
README
The SessionManager package is in charge of managing the session for you.
Why do we need a session manager?
PHP offers a simple way to start sessions: the session_start
function.
So you would we ever need to use another session mechanism?
Well, sessions can be configured in a lot of different ways. You can use
session_set_save_handler
to change completely
the way sessions work. For instance, if you use Drupal, the sessions are stored in database. You could also configure your application
to use a special "session handler".
Some components may need to access the session the way you do. So we decided to provide a simple way to initialize sessions. As a bonus, the SessionManager offers a lot of settings for managing your session graphically if you are using the Mouf framework.
Using the session manager
Just enable the package in your project. When the package is enabled, you have a sessionManager instance create.
To start a session, use:
$sessionManager->start();
To write and close a session, use:
$sessionManager->write_close();
To destroy a session, use:
$sessionManager->destroy();
To regenerate a session id, use:
$sessionManager->regenerateId();
The DefaultSessionManager class
The DefaultSessionManager uses the standard PHP mechanism to track sessions. It offers a number of parameters to configure the lifetime of a session, the path where session files are stored...