Session manipulation utilities for your web app.
I created this library to be able to manipulate a session, e.g. setting and getting data, checking if a data is present, ... In a standalone way.
Folded is a constellation of packages to help you setting up a web app easily, using ready to plug in packages.
- folded/action: A way to organize your controllers for your web app.
- folded/config: Configuration utilities for your PHP web app.
- folded/crypt: Encrypt and decrypt strings for your web app.
- folded/exception: Various kind of exception to throw for your web app.
- folded/history: Manipulate the browser history for your web app.
- folded/http: HTTP utilities for your web app.
- folded/orm: An ORM for you web app.
- folded/request: Request utilities, including a request validator, for your PHP web app.
- folded/routing: Routing functions for your PHP web app.
- folded/view: View utilities for your PHP web app.
- Set and get value by keys
- Can flash value (which means they can be getted only once)
- Can remove values by key
- Can check if a value exist by its key
- Uses the plain
$_SESSION
superglobal
- PHP version >= 7.4.0
- Composer installed
In your root folder, run this command:
composer require folded/session
In the script you want to use, call for the session start function:
if (session_status() !== PHP_SESSION_ACTIVE) {
session_start();
}
// ...
- 1. Set a value
- 2. Get a value by key
- 3. Check if a value exist by key
- 4. Flash a value
- 5. Keep a value one more time after being flashed
- 6. Remove a value by key
In this example, we will set the value in the session.
use function Folded\setSession;
setSession("token", "12345");
In this example, we will get the value of a session key.
use function Folded\setSession;
use function Folded\getSession;
setSession("token", "12345");
echo getSession("token"); // "12345"
In this example, we will check if a value exist by its key.
use function Folded\hasSession;
if (hasSession("token")) {
echo "has token in session";
} else {
echo "has not token in session yet";
}
Flashing a value consist of telling the session to keep a value for a single usage. In this example, we will set a flash value, then get it once. Any attempt to get it a second time will fail.
use function Folded\flashSession;
use function Folded\getSession;
use function Folded\hasSession;
flashSession("token", "12345");
echo getSession("token"); // "12345"
var_dump(hasSession("token")); // bool(false)
In this example, we will use the second parameter of getSession()
to keep a flashed data one last time after being getted.
use function Folded\getSession;
use function Folded\flashSession;
use function Folded\hasSession;
flashSession("token", "12345");
getSession("token", $keep = true);
var_dump(hasSession("token")); // bool(true)
In this example, we will set a value, then remove it, and check if it exist.
use function Folded\hasSession;
use function Folded\removeSession;
use function Folded\setSession;
setSession("token", "12345");
var_dump(hasSession("token")); // booll(true)
removeSession("token");
var_dump(hasSession("token")); // bool(false)
7.3 | 7.4 | 8.0 | |
---|---|---|---|
v0.1.0 | ❌ | ✔️ | ❓ |
v0.1.1 | ❌ | ✔️ | ❓ |
v0.2.0 | ❌ | ✔️ | ❓ |
v0.2.1 | ❌ | ✔️ | ❓ |
v0.2.2 | ❌ | ✔️ | ❓ |