fastpress / session
A robust and flexible session management library for PHP, optimized for use with the Fastpress framework. Provides secure handling of session data with an easy-to-use interface.
Installs: 66
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 1
pkg:composer/fastpress/session
Requires
- php: ^7.4 || ^8.0
Requires (Dev)
- phpstan/phpstan: ^1.0
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.6
README
Fastpress\Session is a modern, secure, and easy-to-use session management library for PHP. Crafted with simplicity and efficiency in mind, it seamlessly integrates with the Fastpress framework, yet remains flexible enough to be used in any PHP project. Whether you're building a small website or a large-scale application, Fastpress\Session provides a robust solution for handling session data securely and effectively.
Features
- Simple and intuitive API: Easy to use methods for session manipulation.
- Flash messages support: Conveniently handle one-time messages for user feedback.
- Secure session handling: Enhanced security features to prevent common vulnerabilities.
- Flexible configuration: Customize session behavior to fit your application's needs.
- PSR-4 autoloading: Fully compliant with modern PHP standards.
Installation
Use Composer to install Fastpress\Session into your project:
composer require fastpress/session
Requirements
- PHP 7.4 or higher.
Usage
start(): bool
Starts the session.
Returns:
trueif the session was started successfully,falseotherwise.
regenerateId(bool $deleteOldSession = true): bool
Regenerates the session ID.
Parameters:
$deleteOldSession: Whether to delete the old session data.
Returns:
trueon success, throwsRuntimeExceptionon failure.
token(): string
Generates a CSRF token.
Returns:
- The generated CSRF token.
validateToken(string $token): bool
Validates a CSRF token.
Parameters:
$token: The token to validate.
Returns:
trueif the token is valid,falseotherwise.
setFlash(string $key, mixed $value, string $type = 'info'): void
Sets a flash message.
Parameters:
$key: The key for the flash message.$value: The value of the flash message.$type: The type of flash message (e.g., 'info', 'success', 'error').
Returns:
void
getFlash(string $key, mixed $default = null): mixed
Gets a flash message.
Parameters:
$key: The key for the flash message.$default: The default value to return if the flash message does not exist.
Returns:
- The flash message value or the default value.
closeWrite(): bool
Closes the session for writing.
Returns:
trueon success,falseotherwise.
gc(bool $force = false): bool
Performs garbage collection on the session.
Parameters:
$force: Whether to force garbage collection.
Returns:
trueon success,falseotherwise.
destroy(): void
Destroys the session.
Returns:
void
set(string $key, mixed $value): void
Sets a session variable.
Parameters:
$key: The key for the session variable.$value: The value of the session variable.
Returns:
void
get(string $key, mixed $default = null): mixed
Gets a session variable.
Parameters:
$key: The key for the session variable.$default: The default value to return if the session variable does not exist.
Returns:
- The session variable value or the default value.
has(string $key): bool
Checks if a session variable exists.
Parameters:
$key: The key for the session variable.
Returns:
trueif the session variable exists,falseotherwise.
delete(string $key): void
Deletes a session variable.
Parameters:
$key: The key for the session variable.
Returns:
void
clear(): void
Clears all session variables.
Returns:
void